[mutter] window-actor: Flip set_redirected around



commit 56f8d32ca9f87c2be0ed93d42e799d04b17ad08f
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Fri Dec 6 17:36:09 2013 -0500

    window-actor: Flip set_redirected around
    
    I know it's confusing with the triple negative, but unredirected is how
    we track it elsewhere: we have an 'unredirected' flag, and 'should_unredirect'.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=720631

 src/compositor/compositor.c                |    4 ++--
 src/compositor/meta-window-actor-private.h |    8 ++++----
 src/compositor/meta-window-actor.c         |   22 +++++++++++-----------
 3 files changed, 17 insertions(+), 17 deletions(-)
---
diff --git a/src/compositor/compositor.c b/src/compositor/compositor.c
index 00779e6..888810f 100644
--- a/src/compositor/compositor.c
+++ b/src/compositor/compositor.c
@@ -755,7 +755,7 @@ set_unredirected_window (MetaCompScreen *info,
   if (info->unredirected_window != NULL)
     {
       MetaWindowActor *window_actor = META_WINDOW_ACTOR (meta_window_get_compositor_private 
(info->unredirected_window));
-      meta_window_actor_set_redirected (window_actor, TRUE);
+      meta_window_actor_set_unredirected (window_actor, FALSE);
     }
 
   info->unredirected_window = window;
@@ -763,7 +763,7 @@ set_unredirected_window (MetaCompScreen *info,
   if (info->unredirected_window != NULL)
     {
       MetaWindowActor *window_actor = META_WINDOW_ACTOR (meta_window_get_compositor_private 
(info->unredirected_window));
-      meta_window_actor_set_redirected (window_actor, FALSE);
+      meta_window_actor_set_unredirected (window_actor, TRUE);
     }
 
   meta_shape_cow_for_window (info->screen, info->unredirected_window);
diff --git a/src/compositor/meta-window-actor-private.h b/src/compositor/meta-window-actor-private.h
index 441f05b..76aaf33 100644
--- a/src/compositor/meta-window-actor-private.h
+++ b/src/compositor/meta-window-actor-private.h
@@ -35,13 +35,13 @@ void meta_window_actor_frame_complete (MetaWindowActor    *self,
 
 void meta_window_actor_invalidate_shadow (MetaWindowActor *self);
 
-void meta_window_actor_set_redirected (MetaWindowActor *self, gboolean state);
-
-gboolean meta_window_actor_should_unredirect (MetaWindowActor *self);
-
 void meta_window_actor_get_shape_bounds (MetaWindowActor       *self,
                                           cairo_rectangle_int_t *bounds);
 
+gboolean meta_window_actor_should_unredirect   (MetaWindowActor *self);
+void     meta_window_actor_set_unredirected    (MetaWindowActor *self,
+                                                gboolean         unredirected);
+
 gboolean meta_window_actor_effect_in_progress  (MetaWindowActor *self);
 void     meta_window_actor_sync_actor_geometry (MetaWindowActor *self,
                                                 gboolean         did_placement);
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
index 9df25d6..36430ca 100644
--- a/src/compositor/meta-window-actor.c
+++ b/src/compositor/meta-window-actor.c
@@ -1299,7 +1299,8 @@ meta_window_actor_should_unredirect (MetaWindowActor *self)
 }
 
 void
-meta_window_actor_set_redirected (MetaWindowActor *self, gboolean state)
+meta_window_actor_set_unredirected (MetaWindowActor *self,
+                                    gboolean         unredirected)
 {
   MetaWindow *metaWindow = meta_window_actor_get_meta_window (self);
   MetaDisplay *display = meta_window_get_display (metaWindow);
@@ -1307,21 +1308,20 @@ meta_window_actor_set_redirected (MetaWindowActor *self, gboolean state)
   Display *xdisplay = meta_display_get_xdisplay (display);
   Window  xwin = meta_window_get_toplevel_xwindow (metaWindow);
 
-  if (state)
+  meta_error_trap_push (display);
+
+  if (unredirected)
     {
-      meta_error_trap_push (display);
-      XCompositeRedirectWindow (xdisplay, xwin, CompositeRedirectManual);
-      meta_error_trap_pop (display);
-      meta_window_actor_detach (self);
-      self->priv->unredirected = FALSE;
+      XCompositeUnredirectWindow (xdisplay, xwin, CompositeRedirectManual);
     }
   else
     {
-      meta_error_trap_push (display);
-      XCompositeUnredirectWindow (xdisplay, xwin, CompositeRedirectManual);
-      meta_error_trap_pop (display);
-      self->priv->unredirected = TRUE;
+      XCompositeRedirectWindow (xdisplay, xwin, CompositeRedirectManual);
+      meta_window_actor_detach_x11_pixmap (self);
     }
+
+  self->priv->unredirected = unredirected;
+  meta_error_trap_pop (display);
 }
 
 void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]