diff options
author | Simon Ser <contact@emersion.fr> | 2020-12-13 14:12:02 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-12-27 10:10:07 +0100 |
commit | c012d770f739fcbb119aba7983d192b48f34e9a7 (patch) | |
tree | 91f17f9454ab35103af824fc0d3301fdf2fc1a20 /include/backend/x11.h | |
parent | c5f239f411da17b3c35356cdc51a306dfe5ff707 (diff) |
backend/x11: implement a real rendering loop
Instead of using a timer, rely on X11 Present events and send a new
frame event when the parent compositor displays a new frame on screen.
The previous attempt at doing this [1] hit issues with EGLSurface, but
we don't use that anymore.
[1]: https://github.com/swaywm/wlroots/pull/1894
Diffstat (limited to 'include/backend/x11.h')
-rw-r--r-- | include/backend/x11.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/include/backend/x11.h b/include/backend/x11.h index 7ffcf465..22835387 100644 --- a/include/backend/x11.h +++ b/include/backend/x11.h @@ -26,8 +26,6 @@ #define XCB_EVENT_RESPONSE_TYPE_MASK 0x7f -#define X11_DEFAULT_REFRESH (60 * 1000) // 60 Hz - struct wlr_x11_backend; struct wlr_x11_output { @@ -47,12 +45,10 @@ struct wlr_x11_output { struct wlr_input_device touch_dev; struct wl_list touchpoints; // wlr_x11_touchpoint::link - struct wl_event_source *frame_timer; - int frame_delay; - struct wl_list buffers; // wlr_x11_buffer::link bool cursor_hidden; + uint64_t last_msc; }; struct wlr_x11_touchpoint { |