diff --git a/src/wlserver.cpp b/src/wlserver.cpp index 8ae18b1..e846e7d 100644 --- a/src/wlserver.cpp +++ b/src/wlserver.cpp @@ -939,6 +939,11 @@ void wlserver_send_frame_done( struct wlr_surface *surf, const struct timespec * wlr_surface_send_frame_done( surf, when ); } +bool wlserver_surface_is_async( struct wlr_surface *surf ) +{ + return get_wl_surface_info( surf )->presentation_hint != 0; +} + void wlserver_touchmotion( double x, double y, int touch_id, uint32_t time ) { if ( wlserver.mouse_focus_surface != NULL ) diff --git a/src/wlserver.hpp b/src/wlserver.hpp index 47d27ce..6002a61 100644 --- a/src/wlserver.hpp +++ b/src/wlserver.hpp @@ -158,6 +158,8 @@ void wlserver_touchup( int touch_id, uint32_t time ); void wlserver_send_frame_done( struct wlr_surface *surf, const struct timespec *when ); +bool wlserver_surface_is_async( struct wlr_surface *surf ); + struct wlserver_output_info { const char *name; const char *description;