diff options
Diffstat (limited to 'backend/wayland')
-rw-r--r-- | backend/wayland/output.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/backend/wayland/output.c b/backend/wayland/output.c index 4eb99a3b..4fbfe9d2 100644 --- a/backend/wayland/output.c +++ b/backend/wayland/output.c @@ -66,8 +66,14 @@ static bool output_swap_buffers(struct wlr_output *wlr_output, output->frame_callback = wl_surface_frame(output->surface); wl_callback_add_listener(output->frame_callback, &frame_listener, output); - return wlr_egl_swap_buffers(&output->backend->egl, output->egl_surface, - damage); + if (!wlr_egl_swap_buffers(&output->backend->egl, + output->egl_surface, damage)) { + return false; + } + + // TODO: if available, use the presentation-time protocol + wlr_output_send_present(wlr_output, NULL, 0, 0); + return true; } static void output_transform(struct wlr_output *wlr_output, |