[mutter/wip/ssd-black-borders-fix: 18/22] compositor: don't recalculate shape and masks until surface arrives



commit fbf7e0073ea9beb20bb259c4804c52504c60a2d0
Author: Ray Strode <rstrode redhat com>
Date:   Thu Mar 15 13:09:23 2018 -0400

    compositor: don't recalculate shape and masks until surface arrives
    
    mutter uses the windows "buffer rect" to determine how big to draw the
    titlebar, and what masks to apply to the window for opaque areas.
    
    That buffer rect is updated the moment we initiate a resize operation on
    a window, but not actually accurate until the resize operation finishes
    
    This commit makes sure the window actor keeps using its old shapes and
    masks until any pending resize operation finishes.

 src/compositor/meta-window-actor.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
index a10e6e573..efb939a20 100644
--- a/src/compositor/meta-window-actor.c
+++ b/src/compositor/meta-window-actor.c
@@ -1922,10 +1922,11 @@ meta_window_actor_handle_updates (MetaWindowActor *self)
 {
   MetaWindowActorPrivate *priv = self->priv;
 
-  if (is_frozen (self))
+  if (is_frozen (self) || meta_window_resize_is_pending (priv->window))
     {
-      /* The window is frozen due to a pending animation: we'll wait until
-       * the animation finishes to reshape and repair the window */
+      /* If the window is frozen due to a pending animation or a resize is
+       * pending then we'll wait until the animation or resize finishes to
+       * reshape and repair the window */
       return;
     }
 


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