From fbf7e0073ea9beb20bb259c4804c52504c60a2d0 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Thu, 15 Mar 2018 13:09:23 -0400 Subject: [PATCH] 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; }