[mutter/gnome-3-30] window-actor: Set actor as compositor private in window before the surface



commit ffa4279a968f17af410c32a9f55ff7f5c9e8d0c0
Author: Marco Trevisan (TreviƱo) <mail 3v1n0 net>
Date:   Fri Jun 28 11:18:22 2019 +0200

    window-actor: Set actor as compositor private in window before the surface
    
    In MetaWindowActor creation we're setting the compositor private (i.e. the
    window actor itself) of a window before creating the surface actor, and so
    passing to the it a window without its compositor side set.
    
    Since the surface actor might use the parent actor, set this before updating
    the surface.
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/660
    
    (cherry picked from commit 7776941b8950d6be71927b3fb575d66b43964310)

 src/compositor/meta-window-actor.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
index df7b8d7ca..b367317c3 100644
--- a/src/compositor/meta-window-actor.c
+++ b/src/compositor/meta-window-actor.c
@@ -471,6 +471,9 @@ meta_window_actor_constructed (GObject *object)
 
   priv->compositor = window->display->compositor;
 
+  /* Hang our compositor window state off the MetaWindow for fast retrieval */
+  meta_window_set_compositor_private (window, object);
+
   meta_window_actor_update_surface (self);
 
   meta_window_actor_update_opacity (self);
@@ -1448,9 +1451,6 @@ meta_window_actor_new (MetaWindow *window)
 
   meta_window_actor_sync_actor_geometry (self, priv->window->placed);
 
-  /* Hang our compositor window state off the MetaWindow for fast retrieval */
-  meta_window_set_compositor_private (window, G_OBJECT (self));
-
   if (window->layer == META_LAYER_OVERRIDE_REDIRECT)
     window_group = compositor->top_window_group;
   else


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