diff options
author | Paul Olav Tvete <paul.tvete@nokia.com> | 2012-03-02 10:12:29 +0100 |
---|---|---|
committer | Andy Nichols <andy.nichols@nokia.com> | 2012-03-02 12:39:52 +0100 |
commit | c5163c53337b72e0c28aebe89580d2ef5986d339 (patch) | |
tree | 4836e96b72b2ee0adf7c0dae0a79389447562f57 /src/compositor/wayland_wrapper | |
parent | 6fa64420f8a0d58ce5774f34b6df4f5502044fbc (diff) |
Avoid flicker when switching back to composited mode
The surface item needs to create a new texture when the compositor
switches from direct render to composited mode.
Change-Id: Ic2d65929617f1941ea290645ac28b8e986c414bc
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Diffstat (limited to 'src/compositor/wayland_wrapper')
-rw-r--r-- | src/compositor/wayland_wrapper/wlsurface.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compositor/wayland_wrapper/wlsurface.cpp b/src/compositor/wayland_wrapper/wlsurface.cpp index 7aa75160c..92ee0e7c3 100644 --- a/src/compositor/wayland_wrapper/wlsurface.cpp +++ b/src/compositor/wayland_wrapper/wlsurface.cpp @@ -41,6 +41,7 @@ #include "wlsurface.h" #include "waylandsurface.h" +#include "waylandsurfaceitem.h" #include "wlcompositor.h" #include "wlshmbuffer.h" @@ -319,6 +320,9 @@ bool Surface::advanceBufferQueue() void Surface::doUpdate() { if (postBuffer()) { + WaylandSurfaceItem *surfaceItem = waylandSurface()->surfaceItem(); + if (surfaceItem) + surfaceItem->setDamagedFlag(true); // avoid flicker when we switch back to composited mode sendFrameCallback(); } else { SurfaceBuffer *surfaceBuffer = currentSurfaceBuffer(); |