[mutter/gbsneto/window-screencast-fixes: 5/7] window-actor: Don't blit when unmapped



commit 2ced8329aedaa0edf5e35f11c4b1d71b4fb1eb5d
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Tue Mar 17 18:20:38 2020 -0300

    window-actor: Don't blit when unmapped
    
    When a window actor is unmapped, we hit a fast path in
    clutter_actor_paint() that culls out the actor itself,
    leaving only a black screen.
    
    Don't blit to the screencast framebuffer when unmapped.
    
    Fixes: https://gitlab.gnome.org/GNOME/mutter/issues/1097
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/1129

 src/compositor/meta-window-actor.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
index 3495e229e..7a992827f 100644
--- a/src/compositor/meta-window-actor.c
+++ b/src/compositor/meta-window-actor.c
@@ -1279,7 +1279,8 @@ meta_window_actor_blit_to_framebuffer (MetaScreenCastWindow *screen_cast_window,
   float width, height;
   float x, y;
 
-  if (meta_window_actor_is_destroyed (window_actor))
+  if (meta_window_actor_is_destroyed (window_actor) ||
+      !clutter_actor_is_mapped (actor))
     return FALSE;
 
   if (!clutter_actor_get_resource_scale (actor, &resource_scale))


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