[mutter/gbsneto/window-screencast-fixes: 7/8] window-actor: Inhibit culling when blitting to screencast
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/gbsneto/window-screencast-fixes: 7/8] window-actor: Inhibit culling when blitting to screencast
- Date: Thu, 19 Mar 2020 00:26:33 +0000 (UTC)
commit a7fbb35ed03084dacaa387d45ecfd237da8aa26f
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Wed Mar 18 21:14:58 2020 -0300
window-actor: Inhibit culling when blitting to screencast
This allows us to screencast any window continuously, even
without it being visible. Because it's still being painted,
clients continue to receive frame callbacks, and people
are happy again.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/1129
src/compositor/meta-window-actor.c | 4 ++++
1 file changed, 4 insertions(+)
---
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
index 143c5ac6b..e28cead3e 100644
--- a/src/compositor/meta-window-actor.c
+++ b/src/compositor/meta-window-actor.c
@@ -1287,6 +1287,8 @@ meta_window_actor_blit_to_framebuffer (MetaScreenCastWindow *screen_cast_window,
if (!clutter_actor_get_resource_scale (actor, &resource_scale))
return FALSE;
+ clutter_actor_inhibit_culling (actor);
+
width = ceilf (width * resource_scale);
height = ceilf (height * resource_scale);
@@ -1322,6 +1324,8 @@ meta_window_actor_blit_to_framebuffer (MetaScreenCastWindow *screen_cast_window,
cogl_framebuffer_pop_matrix (framebuffer);
cogl_framebuffer_pop_clip (framebuffer);
+ clutter_actor_uninhibit_culling (actor);
+
return TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]