From d16d341381e806d41e27a4cbcd249ea18708c2ef Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Thu, 19 May 2022 00:58:04 -0400 Subject: [PATCH] wlr_scene: Only send frame done events for visible buffers --- types/scene/wlr_scene.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/types/scene/wlr_scene.c b/types/scene/wlr_scene.c index 94d0c02c..f5af07e0 100644 --- a/types/scene/wlr_scene.c +++ b/types/scene/wlr_scene.c @@ -642,7 +642,9 @@ void wlr_scene_buffer_set_transform(struct wlr_scene_buffer *scene_buffer, void wlr_scene_buffer_send_frame_done(struct wlr_scene_buffer *scene_buffer, struct timespec *now) { - wlr_signal_emit_safe(&scene_buffer->events.frame_done, now); + if (pixman_region32_not_empty(&scene_buffer->node.visible)) { + wlr_signal_emit_safe(&scene_buffer->events.frame_done, now); + } } static struct wlr_texture *scene_buffer_get_texture(