diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/backend/drm/drm.h | 2 | ||||
-rw-r--r-- | include/wlr/types/wlr_output.h | 6 |
2 files changed, 8 insertions, 0 deletions
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h index 4b92c5eb..69416925 100644 --- a/include/backend/drm/drm.h +++ b/include/backend/drm/drm.h @@ -114,6 +114,8 @@ struct wlr_drm_backend { uint64_t cursor_width, cursor_height; struct wlr_drm_format_set mgpu_formats; + + bool supports_tearing_page_flips; }; struct wlr_drm_mode { diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index 30331fba..de7ea332 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -89,6 +89,12 @@ struct wlr_output_state { enum wl_output_subpixel subpixel; struct wlr_buffer *buffer; + /* Request a tearing page-flip. When enabled, this may cause the output to + * display a part of the previous buffer and a part of the current buffer at + * the same time. The backend may reject the commit if a tearing page-flip + * cannot be performed, in which case the caller should fall back to a + * regular page-flip at the next wlr_output.frame event. */ + bool tearing_page_flip; enum wlr_output_state_mode_type mode_type; struct wlr_output_mode *mode; |