New class to encapsulate a Window's Pixmap
The behavior for creating a pixmap for a window is moved from Toplevel into a dedicated class WindowPixmap. Scene::Window holds a reference to this class and creates a new WindowPixmap whenever the pixmap needs to be discarded. In addition it also keeps the old WindowPixmap around for the case that creating the new pixmap fails. The compositor can in that case use the previous pixmap which reduces possible flickering. Also this referencing can be used to improve transition effects like the maximize windows effect which would benefit from starting with the old pixmap. For XRender and OpenGL a dedicated sub-class of the WindowPixmap is created which provides the additional mapping to an XRender picture and OpenGL texture respectively. BUG: 319563 FIXED-IN: 4.11 REVIEW: 110577
Showing
- kwin/composite.cpp 0 additions, 35 deletionskwin/composite.cpp
- kwin/scene.cpp 79 additions, 0 deletionskwin/scene.cpp
- kwin/scene.h 151 additions, 1 deletionkwin/scene.h
- kwin/scene_opengl.cpp 59 additions, 64 deletionskwin/scene_opengl.cpp
- kwin/scene_opengl.h 19 additions, 5 deletionskwin/scene_opengl.h
- kwin/scene_xrender.cpp 42 additions, 31 deletionskwin/scene_xrender.cpp
- kwin/scene_xrender.h 20 additions, 3 deletionskwin/scene_xrender.h
- kwin/toplevel.cpp 0 additions, 6 deletionskwin/toplevel.cpp
- kwin/toplevel.h 0 additions, 10 deletionskwin/toplevel.h
Loading
Please register or sign in to comment