diff options
Diffstat (limited to 'video/out/wayland_common.c')
-rw-r--r-- | video/out/wayland_common.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/video/out/wayland_common.c b/video/out/wayland_common.c index eb1e0f8c21..ecea6fedeb 100644 --- a/video/out/wayland_common.c +++ b/video/out/wayland_common.c @@ -1717,6 +1717,17 @@ void vo_wayland_wait_frame(struct vo_wayland_state *wl) wl_display_dispatch_pending(wl->display); } + if (!wl->hidden && wl->frame_wait) { + wl->timeout_count += 1; + if (wl->timeout_count > wl->current_output->refresh_rate) + wl->hidden = true; + } + + if (!wl->frame_wait) { + wl->timeout_count = 0; + wl->hidden = false; + } + if (wl_display_get_error(wl->display) == 0) wl_display_roundtrip(wl->display); } |