From cc5968109b7f52f03f2d7000d901988cf7164ead Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Sun, 27 Jan 2019 15:43:35 +0100 Subject: [PATCH] window-actor: Fix check to clip beneath the window We want to clip it away if 1) The window is fully opaque or 2) If it's translucent but has a frame (as explained in the comment above). The code didn't quite match and we were only applying it on case #2. Case #1 is far more common, and saves us from pushing some drawing that we know will be covered in the end. https://gitlab.gnome.org/GNOME/mutter/merge_requests/698 --- src/compositor/meta-window-actor.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c index a3b2c3da0..cf7c4642d 100644 --- a/src/compositor/meta-window-actor.c +++ b/src/compositor/meta-window-actor.c @@ -647,7 +647,10 @@ clip_shadow_under_window (MetaWindowActor *self) MetaWindowActorPrivate *priv = meta_window_actor_get_instance_private (self); - return is_non_opaque (self) && priv->window->frame; + if (priv->window->frame) + return TRUE; + + return !is_non_opaque (self); } static void