From ae61cd6bfb97a2ab5d03b30d90dd81ee6c82d352 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Tue, 6 Dec 2022 17:34:05 +0100 Subject: backend/drm: use separate field to store pending cursor FB We'll move the pending primary FB into the connector state in the next commit, dropping wlr_drm_plane.pending_fb in the process. Introduce a dedicated field for the cursor, which has to be managed in a special way due to our set_cursor API. --- include/backend/drm/drm.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include/backend/drm') diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h index 1540aea4..365f1ad2 100644 --- a/include/backend/drm/drm.h +++ b/include/backend/drm/drm.h @@ -120,6 +120,8 @@ struct wlr_drm_connector { int cursor_x, cursor_y; int cursor_width, cursor_height; int cursor_hotspot_x, cursor_hotspot_y; + /* Buffer to be submitted to the kernel on the next page-flip */ + struct wlr_drm_fb *cursor_pending_fb; struct wl_list link; @@ -152,6 +154,7 @@ size_t drm_crtc_get_gamma_lut_size(struct wlr_drm_backend *drm, void drm_lease_destroy(struct wlr_drm_lease *lease); struct wlr_drm_fb *plane_get_next_fb(struct wlr_drm_plane *plane); +struct wlr_drm_fb *get_next_cursor_fb(struct wlr_drm_connector *conn); #define wlr_drm_conn_log(conn, verb, fmt, ...) \ wlr_log(verb, "connector %s: " fmt, conn->name, ##__VA_ARGS__) -- cgit v1.2.3