diff --git a/wayland/wayland-client.c b/wayland/wayland-client.c index 531807db..59c68f7c 100644 --- a/wayland/wayland-client.c +++ b/wayland/wayland-client.c @@ -593,6 +593,13 @@ wl_display_iterate(struct wl_display *display, uint32_t mask) } } +WL_EXPORT void +wl_display_flush(struct wl_display *display) +{ + while (display->mask & WL_DISPLAY_WRITABLE) + wl_display_iterate (display, WL_DISPLAY_WRITABLE); +} + WL_EXPORT uint32_t wl_display_allocate_id(struct wl_display *display) { diff --git a/wayland/wayland-client.h b/wayland/wayland-client.h index f1ac7978..eefb840a 100644 --- a/wayland/wayland-client.h +++ b/wayland/wayland-client.h @@ -60,6 +60,7 @@ int wl_display_get_fd(struct wl_display *display, wl_display_update_func_t update, void *data); uint32_t wl_display_allocate_id(struct wl_display *display); void wl_display_iterate(struct wl_display *display, uint32_t mask); +void wl_display_flush(struct wl_display *display); int wl_display_sync_callback(struct wl_display *display, wl_display_sync_func_t func, void *data); int wl_display_frame_callback(struct wl_display *display,