kwin/libkwineffects
Martin Gräßlin 941c02a60f Introduce cross-fading with previous pixmap
Cross fading with previous pixmap is achieved by referencing the old
window pixmap. WindowPaintData has a cross-fade-factor which interpolates
between 0.0 (completely old pixmap) to 1.0 (completely new pixmap).

If a cross fading factor is set and a previous pixmap is valid this one
is rendered on top of the current pixmap with opacity adjusted. This
results in a smoother fading.

To simplify the setup the AnimationEffect is extended and also takes care
about correctly (un)referencing the previous window pixmap. The maximize
effect is adjusted to make use of this new capabilities.

Unfortunately this setup has a huge problem with the case that the window
decoration gets smaller (e.g. from normal to maximized state). In this
situation it can happen that the old window is rendered with parts outside
the content resulting in video garbage being shown. To prevent this a set
of new WindowQuads is generated with normalized texture coordinates in
the safe area which contains real content.

For OpenGL2Window a PreviousContentLeaf is added which is only set up in
case the crass fading factor is set.

REVIEW: 110578
2013-06-05 08:18:28 +02:00
..
anidata.cpp initialize a member and initialize a boolean 2013-04-29 18:14:50 +02:00
anidata_p.h add effect debug interface and dbus export 2013-03-28 20:31:02 +01:00
CMakeLists.txt More fine grained linking than X11_LIBRARIES 2013-03-06 10:14:21 +01:00
kwinanimationeffect.cpp Introduce cross-fading with previous pixmap 2013-06-05 08:18:28 +02:00
kwinanimationeffect.h Introduce cross-fading with previous pixmap 2013-06-05 08:18:28 +02:00
kwinconfig.h.cmake
kwineffects.cpp Introduce cross-fading with previous pixmap 2013-06-05 08:18:28 +02:00
kwineffects.h Introduce cross-fading with previous pixmap 2013-06-05 08:18:28 +02:00
kwinglcolorcorrection.cpp kwin: Fix color correction with GLSL 1.40 2013-05-08 18:33:03 +02:00
kwinglcolorcorrection.h Remove not needed includes from kwineffect header files 2013-03-06 10:23:09 +01:00
kwinglcolorcorrection_p.h Remove not needed includes from kwineffect header files 2013-03-06 10:23:09 +01:00
kwinglobals.cpp
kwinglobals.h Defines to create the boilerplate code for KWin's singleton classes 2013-04-15 09:57:25 +02:00
kwinglplatform.cpp kwin: Don't require GL_ARB_shading_language_100 2013-05-08 18:33:02 +02:00
kwinglplatform.h Add some missing includes with Qt5/KF5 2013-03-07 13:59:16 +01:00
kwingltexture.cpp kwin: Add GLTexture::matrix() 2013-05-28 16:35:36 +02:00
kwingltexture.h kwin: Add GLTexture::matrix() 2013-05-28 16:35:36 +02:00
kwingltexture_p.h kwin: Add GLTexture::matrix() 2013-05-28 16:35:36 +02:00
kwinglutils.cpp kwin: Add support for rendering quads using an index buffer 2013-06-05 00:41:24 +02:00
kwinglutils.h kwin: Add support for rendering quads using an index buffer 2013-06-05 00:41:24 +02:00
kwinglutils_funcs.cpp kwin: Resolve functions for GL_ARB_copy_buffer 2013-06-05 00:41:24 +02:00
kwinglutils_funcs.h kwin: Add support for rendering quads using an index buffer 2013-06-05 00:41:24 +02:00
kwinxrenderutils.cpp Remove not needed includes from kwineffect header files 2013-03-06 10:23:09 +01:00
kwinxrenderutils.h Remove not needed includes from kwineffect header files 2013-03-06 10:23:09 +01:00
Mainpage.dox
Messages.sh