Commit graph

8206 commits

Author SHA1 Message Date
Martin Gräßlin
08b2aebd30 Merge branch 'KDE/4.7'
Conflicts:
	kwin/libkwineffects/kwinglutils.cpp
	kwin/libkwineffects/kwinglutils.h
2011-07-03 09:30:38 +02:00
Martin Gräßlin
b837a3fca1 Render Shadow with only one GL texture
Copies the shadow parts into one image and creates a GLTexture
from the image, so that we can render the complete shadow with
just one texture and one painting pass.

Should remove most of the overhead involved when rendering the new Shadows.

As a side effect this should fix missing shadows with non-NPOT GPUs and
a rendering glitch reported with NVIDIA.

REVIEW: 101742
2011-07-03 09:24:28 +02:00
Martin Gräßlin
4898ac4b93 Merge branch 'KDE/4.7'
@Thomas: please try to only commit to KDE/4.7 and forward port to master
CCMAIL: thomas.luebking@gmail.com
2011-07-03 09:09:16 +02:00
Thomas Lübking
a1b110634f zoom effect: fix xcursor loading, implement cursor scaling for XRender 2011-07-02 20:07:09 +02:00
Thomas Lübking
c2e06221ca zoom effect: fix xcursor loading, implement cursor scaling for XRender 2011-07-02 20:03:12 +02:00
Martin Gräßlin
3259ff612a Merge branch 'KDE/4.7' 2011-07-02 15:32:56 +02:00
Martin Gräßlin
42aac88f1b It helps to also set the texture size in GLES
Up to now we have not used it in OpenGL ES, but now we do and
rendering is funny if the size is not set.
2011-07-02 15:31:36 +02:00
Hugo Pereira Da Costa
78b8dada3b Merge branch 'master' of git.kde.org:kde-workspace 2011-07-02 13:14:17 +02:00
Hugo Pereira Da Costa
db297dee87 fixed unbalanced save/restore 2011-07-02 13:13:58 +02:00
Martin Gräßlin
6850f0ef88 Merge branch 'KDE/4.7' 2011-07-01 18:08:47 +02:00
Martin Gräßlin
f978d7b97d Fix decoration rendering with GL_TEXTURE_RECTANGLE_ARB
When using graphicssystem native the texture may be using
GL_TEXTURE_RECTANGLE_ARB instead of GL_TEXTURE_2D. This
needs to be honoured in order to make KWin work reliable
with e.g. R300 chipsets.

BUG: 274607
CCBUG: 276622
FIXED-IN: 4.7.0
2011-07-01 18:04:15 +02:00
Martin Gräßlin
5f0bbe4617 Merge branch 'KDE/4.7' 2011-06-30 17:50:58 +02:00
Martin Gräßlin
b470ef52a9 Fix major window rendering regression with NPOT textures
The adjusted code for generating texture coordinates did not
take care of GL_TEXTURE_RECTANGLE_ARB textures causing the
generation of wrong texcoords.

BUG: 276622
FIXED-IN: 4.7.0
2011-06-30 17:47:06 +02:00
Hugo Pereira Da Costa
05fc073439 draw background overlay pixmap manually in preview. 2011-06-30 11:43:34 +02:00
Hugo Pereira Da Costa
18cdb220d7 Added "show advanced options" button. 2011-06-30 11:20:50 +02:00
Hugo Pereira Da Costa
dfcab17585 use backing store pixmap for buttons when compositing is not active.
Copy parent backgronud from backing store pixmap when rendering buttons.
2011-06-28 09:24:02 +02:00
Hugo Pereira Da Costa
d3d5d9b9d3 Merge branch 'master' into master-no-composite 2011-06-28 09:09:50 +02:00
Hugo Pereira Da Costa
f6a12ad1cf coding style. 2011-06-28 09:09:31 +02:00
Hugo Pereira Da Costa
8361b13de9 added double buffering to oxygen-client when compositing is off;
force update of buttons in client->paintEvent();
call _client->paint() from Button, instead of parentWidget()->render();
2011-06-28 01:27:58 +02:00
Hugo Pereira Da Costa
6e0733e0de fixed button rendering when compositing is disabled. 2011-06-28 01:09:22 +02:00
Philipp Knechtges
6ad6c7da8b libkworkspace: tuning glibc allocator
Some applications like kwin suffer from heap fragmentation
when using the raster graphicssystem. This patch provides a function
that forces glibc to shrink the heap more often.
Now 5*pagesize(=20kB on a typical x86 system) of unused space at the
end of the heap are enough to force free()
to release this space. The default threshold is 128kB which is too much
for an average kworkspace application.

REVIEW: 101385
2011-06-27 16:14:57 +02:00
Martin Gräßlin
135d835dd5 Merge branch 'KDE/4.7' 2011-06-26 18:52:18 +02:00
Martin Gräßlin
482ba893d5 Magnifier requires OpenGL 2011-06-26 18:51:08 +02:00
Martin Gräßlin
6cfdbfe1dc Remove compositing self-check
Removes the last bits of the self-check at compositing startup.
It seems like they were only added to XRender because they were
in OpenGL and there they are not available for quite some time.

Also removes the now obsolete disable functionality checks from UI.

REVIEW: 101756
2011-06-26 09:19:22 +02:00
Martin Gräßlin
e766fe0a82 Remove the compositing too slow checks
The heuristic never worked reliable.

REVIEW: 101750
2011-06-26 09:18:08 +02:00
Martin Gräßlin
c8daeef43c Remove (en|dis)able(Un)NormalizedTexCoords from GLTexture
Those are not used anymore as makeArrays only renders normalized
texCoords and also honors the y-Inverted case.
2011-06-26 09:15:31 +02:00
Arthur Arlt
25654f25b8 Removing TopMenu
Since the funtionality of TopMenu did no longer work in KDE4 this feature was
removed from Workspace. Every reference to it was removed as well as commentaries
and documentation.

REVIEW: 101485
2011-06-24 12:27:56 +02:00
Philipp Knechtges
e38ab44ea4 Merge branch 'master' of git.kde.org:/kde-workspace 2011-06-23 15:14:50 +02:00
Martin Gräßlin
66d22738e4 Disable PaintRedirector when non-composited
Without Compositing we do not really need the PaintRedirector,
it only adds overhead. This reverts the behavior to how it was before
the PaintRedirector was introduced by just not redirecting the paint
in the event filter when compositing is not active. This should have
the lowest impact on the existing source base.

The change breaks at least oxygen window decoration when compositing
is not active as the decoration is no longer double buffered. But
as written this is exactly the behavior as used before 4.3. Given
the push today there should be enough time for all affected decos
to adjust to the change.

REVIEW: 101413
2011-06-23 12:37:15 +02:00
Martin Gräßlin
12d3b354fc Remove drawbound move/resize functionality
Drawbound was nowadays only used when compositing is disabled.
For the composited case, the drawbound was replaced by the resize
effect and in fact we should always just use the resize effect.

REVIEW: 101411
2011-06-23 12:15:54 +02:00
Martin Gräßlin
494edbe76f Remove Mouse Emulation from KWin
Mouse Emulation is provided in a better way by KAccess. This provides
a global systemsettings switch to enable mouse emulation instead of
a shortcut and Xkb to enable mouse control with keyboard instead of
sending out fake mouse events.

So no need for duplicated functionality in KWin.

REVIEW: 101406
2011-06-23 11:56:00 +02:00
Philipp Knechtges
116e024d12 kwin: moving KWin::GLTexture to a separate file 2011-06-22 13:03:36 +02:00
Script Kiddy
163824af85 SVN_SILENT made messages (.desktop file) 2011-06-22 09:44:08 +02:00
Script Kiddy
538e9d1467 SVN_SILENT made messages (.desktop file) 2011-06-21 11:01:53 +02:00
Michael Zanetti
5fed91d391 Merge branch 'master' of git://anongit.kde.org/kde-workspace 2011-06-20 22:00:12 +02:00
Michael Zanetti
e1bf590a1c - fixes calculation of WindowMotionManager in case a new destination is set when the window is not at its original position and provide a function to check if windows
are currently moving (by Thomas Lübking)
- make use of new function and bugfix in SlideBack effect
2011-06-20 21:56:56 +02:00
Script Kiddy
bbcff0860f SVN_SILENT made messages (.desktop file) 2011-06-20 10:22:05 +02:00
Michael Zanetti
2f10503ee5 fix TabBox detection in SlideBack effect 2011-06-19 22:05:48 +02:00
Martin Gräßlin
04020f0b42 Deep copy of Shadow pixmap again
Basically revert of fb9afb61f8c1e7db4ae034435a9d54b5e87977d5.
Fixes an issue of black shadows which could sometimes happen in
OpenGL backend.
2011-06-19 20:54:14 +02:00
Martin Gräßlin
6569bb071f Pass windowSize to Fragment Shader again 2011-06-19 20:54:13 +02:00
Martin Gräßlin
a05ad98896 Remove textureWidth/textureHeight from all Shaders
The uniforms textureWidth and textureHeight were only needed for
normal windows. For everything else it was just 1.0/1.0, that is
normalized.

The makeArrays method is changed to produce normalized texcoords
obsoleting the need for these uniforms. So two uniforms less, one
calculation in vertex shaders less and many many lines of code
removed.

At the same time makeArrays is also adjusted to take care of
yInverted of the texture, which is needed as we no longer can use
the enableUnnormalizedTexCoords which did the yInverted transformation.

REVIEW: 101646
2011-06-19 20:54:13 +02:00
Script Kiddy
16771b043c SVN_SILENT made messages (.desktop file) 2011-06-19 09:40:27 +02:00
Martin Gräßlin
d0e57a57cc Fix incorrect rendering of Cube Wallpaper with GL2
Textures should be rendered with simple shader when not being transformed.
2011-06-15 21:40:15 +02:00
Philipp Knechtges
89ec0b63aa kwin: Fix crash for Toplevel windows with zero EffectWindow
While closing a window it might happen that we emit the windowOpacityChanged
signal although we dont have an EffectWindow.
Related to commit 1ce3f9fc53aa93a7536d43d0c936266f0ae21b65
2011-06-15 19:34:12 +02:00
Hugo Pereira Da Costa
5194705e30 fixed detection of pressed state for decoration's 'toggle like' buttons. 2011-06-14 18:49:46 +02:00
Script Kiddy
15ea44e709 SVN_SILENT made messages (.desktop file) 2011-06-14 10:59:04 +02:00
Thomas Lübking
9397b14e81 kwin, add debug statements to configureReqest 2011-06-13 19:33:40 +02:00
Script Kiddy
9ec8ee095a SVN_SILENT made messages (.desktop file) 2011-06-12 10:07:36 +02:00
Thomas Lübking
3af7395ab8 avoid calling QPixmap::paintEngine() in scene rendering
by checking the graphicssystem at startup
also avoid pixmap and memory leaking on the xrender backend, validate some pointers
on deletion in SceneOpnGL and avoid attempts to render ::isNull pixmaps
2011-06-11 15:23:03 +02:00
Script Kiddy
f1eb4d97bf SVN_SILENT made messages (.desktop file) 2011-06-10 09:20:20 +02:00