aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Orzechowski <orzechowski.alexander@gmail.com>2022-05-19 00:58:04 -0400
committerAlexander Orzechowski <orzechowski.alexander@gmail.com>2022-08-14 02:38:50 -0400
commitd16d341381e806d41e27a4cbcd249ea18708c2ef (patch)
tree4a4147bc06b3d676f78110da583c242ff246a768
parent6d62300324593ae123e04343cb949029a1bd4990 (diff)
wlr_scene: Only send frame done events for visible buffers
-rw-r--r--types/scene/wlr_scene.c4
1 files changed, 3 insertions, 1 deletions
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(