With the X server patches [1] and [2] this avoid blinkng when a
fullscreen window is unredirected.

[1] http://lists.x.org/archives/xorg-devel/2011-April/021450.html
[2] http://lists.x.org/archives/xorg-devel/2011-May/022015.html
---
 plugins/composite/src/window.cpp |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/plugins/composite/src/window.cpp b/plugins/composite/src/window.cpp
index b4a8102..35ee5fc 100644
--- a/plugins/composite/src/window.cpp
+++ b/plugins/composite/src/window.cpp
@@ -201,16 +201,16 @@ CompositeWindow::unredirect ()
 
     release ();
 
-    XCompositeUnredirectWindow (screen->dpy (),
-                               ROOTPARENT (priv->window),
-                               CompositeRedirectManual);
-
     priv->redirected   = false;
     priv->overlayWindow = true;
     priv->cScreen->overlayWindowCount ()++;
 
     if (priv->cScreen->overlayWindowCount () > 0)
        priv->cScreen->updateOutputWindow ();
+
+    XCompositeUnredirectWindow (screen->dpy (),
+                               ROOTPARENT (priv->window),
+                               CompositeRedirectManual);
 }
 
 bool
-- 
1.7.3.4

_______________________________________________
dev mailing list
[email protected]
http://lists.compiz.org/mailman/listinfo/dev

Reply via email to