diff --git a/src/backend/wayland.c b/src/backend/wayland.c index d461c5c..f6a0fe4 100644 --- a/src/backend/wayland.c +++ b/src/backend/wayland.c @@ -18,8 +18,6 @@ #endif /* callback todo: - void (*up)(MwLL handle, void* data); - void (*down)(MwLL handle, void* data); void (*key)(MwLL handle, void* data); void (*key_released)(MwLL handle, void* data); void (*focus_in)(MwLL handle, void* data); @@ -92,8 +90,7 @@ static void pointer_button(void* data, struct wl_pointer* wl_pointer, MwU32 seri break; } } - - timed_redraw(self, time, 50, &self->wayland.cooldown_timer); + MwLLDispatch(self, draw, NULL); }; static void pointer_axis(void* data, struct wl_pointer* wl_pointer, MwU32 time, MwU32 axis, wl_fixed_t value) {}; @@ -533,7 +530,9 @@ static void setup_toplevel(MwLL r, int x, int y) { r->wayland.event_queue = wl_display_create_queue(r->wayland.display); - MwLLForceRender(r); + egl_resetup(r); + MwLLDispatch(r, draw, NULL); + recursive_draw(r); // buffer_setup(&r->wayland); @@ -587,7 +586,9 @@ static void setup_sublevel(MwLL parent, MwLL r, int x, int y) { r->wayland.configured = MwTRUE; if(!r->wayland.egl_setup) { r->wayland.egl_setup = egl_setup(r, r->wayland.ww, r->wayland.wh); - MwLLForceRender(r); + egl_resetup(r); + MwLLDispatch(r, draw, NULL); + recursive_draw(r); }; r->wayland.event_queue = parent->wayland.event_queue;