summaryrefslogtreecommitdiffstats
path: root/src/compositor/wayland_wrapper
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@nokia.com>2012-03-02 10:12:29 +0100
committerAndy Nichols <andy.nichols@nokia.com>2012-03-02 12:39:52 +0100
commitc5163c53337b72e0c28aebe89580d2ef5986d339 (patch)
tree4836e96b72b2ee0adf7c0dae0a79389447562f57 /src/compositor/wayland_wrapper
parent6fa64420f8a0d58ce5774f34b6df4f5502044fbc (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.cpp4
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();