Commit graph

23 commits

Author SHA1 Message Date
Martin Gräßlin
fe4329a252 Only call active effects in the effect chain
Each effect is able to declare itself as currently being active,
that is transforming windows or painting or screen or doing anything
during the current rendered frame.

This change eliminates the hottest path inside KWin identified by
callgrind.

REVIEW: 102449
2011-08-29 07:06:58 +02:00
Philipp Knechtges
2dd48de82a kwin: reverting some parts of 73cd2c6fa67e2653a8d9a5e17f0140381d998c19
Might results to some asserts in the debug build and does not play well with other effects.
2011-08-27 19:05:34 +02:00
Philipp Knechtges
c12e089b41 kwin: optimizing taskbarthumbnail effect
Corrected some addRepaint calls and dropped the
dependency on paintGenericScreen.
2011-08-27 18:22:05 +02:00
Martin Gräßlin
987bc837d9 Remove define KWIN_HAVE_OPENGL_COMPOSITING
Due to changes in build system we have always either OpenGL or OpenGL ES.
This allows to remove the KWIN_HAVE_OPENGL_COMPOSITING define. In the
effects the define is kept as KWIN_HAVE_OPENGL which can be used in
future to build also an XRender only effect system.
2011-08-13 16:46:43 +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
Martin Gräßlin
39151f8454 Explicitly repaint when thumbnails are requested/removed
That looks like it only worked because the thumbnail background
was repainted at the same time. Let's make it a little bit more
reliable.
2011-04-28 20:02:26 +02:00
Martin Gräßlin
640fdc7b6d PropertyNotify becomes a signal 2011-03-12 19:18:19 +01:00
Martin Gräßlin
88d50727ee WindowDamaged becomes a signal 2011-03-12 15:04:22 +01:00
Martin Gräßlin
e355700e6e EffectsHandler emits windowDeleted signal
Workspace emits a deletedRemoved signal which the EffectsHandlerImpl translates
into a windowDeleted signal.
2011-02-27 10:47:42 +01:00
Martin Gräßlin
ab6f2ba1fd EffectsHandler emits windowAdded signal
All previously existing windowAdded methods are renamed to slotWindowAdded.
EffectsHandlerImpl is connected to Workspace's clientAdded signal, which is
emitted a little bit earlier than the previous direct method call. This might
change behavior.
Another signal is added to Workspace to signal that an unmanaged is added.
2011-02-25 22:06:02 +01:00
Martin Gräßlin
0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Martin Gräßlin
764338e042 TaskbarThumbnails should say that it needs transformed windows.
Fixes a nice transformation issue when using thumbnails after cube effect.
2011-01-30 14:12:04 +01:00
Martin Gräßlin
191435d425 Move Lanczos filter from taskbarthumbnail effect into the scene and use it also in boxswitch, presentwindows and thumbnailaside effects.
svn path=/trunk/KDE/kdebase/workspace/; revision=1133901
2010-06-02 20:04:54 +00:00
Martin Gräßlin
cfce13e615 Make the new taskbar thumbnail shader work with NVIDIA driver. Therefore the alpha channel has to be added to oqaque windows in scene_opengl.
svn path=/trunk/KDE/kdebase/workspace/; revision=1130622
2010-05-25 20:28:23 +00:00
Martin Gräßlin
13f78bd02d Paint thumbnail for each window in the group.
BUG: 238480

svn path=/trunk/KDE/kdebase/workspace/; revision=1129685
2010-05-23 10:32:32 +00:00
Fredrik Höglund
cbb4248a2a Use a high quality lanczos filter to scale the window thumbnails when
GLSL shaders are supported.

Currently disabled when the NVIDIA driver is used because of a driver
issue that will need to be worked around.

svn path=/trunk/KDE/kdebase/workspace/; revision=1125672
2010-05-11 22:05:00 +00:00
Lucas Murray
51168e97a4 Keep the logout effect active until KWin is killed or the user cancels
the logout by using new information provided by KSMServer; Allow effects
to read and detect root window property notify events.

svn path=/trunk/KDE/kdebase/workspace/; revision=1083335
2010-02-01 07:44:27 +00:00
Lucas Murray
8a8428e41c Less Krazy warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042572
2009-10-30 06:51:59 +00:00
Lucas Murray
20f1a79d04 Less warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1031490
2009-10-05 09:47:13 +00:00
Martin Gräßlin
0ff09244f1 Taskbarthumbnail sets texture width and height if there is a shader bound.
BUG: 190061

svn path=/trunk/KDE/kdebase/workspace/; revision=959836
2009-04-27 11:10:08 +00:00
Lucas Murray
245cc3ecb6 Correct detection of damaged windows in the taskbar thumbnail effect.
svn path=/trunk/KDE/kdebase/workspace/; revision=935762
2009-03-06 06:16:00 +00:00
Lucas Murray
8f55220d9a Update the taskbar thumbnail if the original window was damaged.
svn path=/trunk/KDE/kdebase/workspace/; revision=932227
2009-02-26 10:38:52 +00:00
Lucas Murray
846496d2c1 Cleaned up the effects/ directory by moving each individual effect into
its own directory, cleaned up the effect config macros and renamed
"MakeTransparent" to "Translucency" so that it matches its visible name.

svn path=/trunk/KDE/kdebase/workspace/; revision=921749
2009-02-05 15:35:38 +00:00
Renamed from effects/taskbarthumbnail.cpp (Browse further)