From 41e735242dc8788618bb668ad70ea164e47099db Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Sun, 13 Aug 2017 10:51:50 -0400 Subject: Remove wlr_output_state, update backends --- include/backend/drm.h | 14 ++++++++------ include/backend/wayland.h | 12 +++++++----- include/wlr/interfaces/wlr_output.h | 22 ++++++++++------------ include/wlr/types/wlr_output.h | 4 +--- 4 files changed, 26 insertions(+), 26 deletions(-) (limited to 'include') diff --git a/include/backend/drm.h b/include/backend/drm.h index 686d9f30..858b4616 100644 --- a/include/backend/drm.h +++ b/include/backend/drm.h @@ -12,6 +12,7 @@ #include #include +#include #include #include @@ -137,8 +138,9 @@ struct wlr_output_mode_state { drmModeModeInfo mode; }; -struct wlr_output_state { - struct wlr_output *base; +struct wlr_drm_output { + struct wlr_output output; + enum wlr_drm_output_state state; uint32_t connector; @@ -161,10 +163,10 @@ struct wlr_output_state { struct wlr_drm_interface { // Enable or disable DPMS for output void (*conn_enable)(struct wlr_drm_backend *backend, - struct wlr_output_state *output, bool enable); + struct wlr_drm_output *output, bool enable); // Pageflip on crtc. If mode is non-NULL perform a full modeset using it. bool (*crtc_pageflip)(struct wlr_drm_backend *backend, - struct wlr_output_state *output, struct wlr_drm_crtc *crtc, + struct wlr_drm_output *output, struct wlr_drm_crtc *crtc, uint32_t fb_id, drmModeModeInfo *mode); // Enable the cursor buffer on crtc. Set bo to NULL to disable bool (*crtc_set_cursor)(struct wlr_drm_backend *backend, @@ -177,11 +179,11 @@ struct wlr_drm_interface { bool wlr_drm_check_features(struct wlr_drm_backend *drm); bool wlr_drm_resources_init(struct wlr_drm_backend *drm); void wlr_drm_resources_free(struct wlr_drm_backend *drm); -void wlr_drm_output_cleanup(struct wlr_output_state *output, bool restore); +void wlr_drm_output_cleanup(struct wlr_drm_output *output, bool restore); void wlr_drm_scan_connectors(struct wlr_drm_backend *state); int wlr_drm_event(int fd, uint32_t mask, void *data); -void wlr_drm_output_start_renderer(struct wlr_output_state *output); +void wlr_drm_output_start_renderer(struct wlr_drm_output *output); #endif diff --git a/include/backend/wayland.h b/include/backend/wayland.h index 3097c8cf..da4465fa 100644 --- a/include/backend/wayland.h +++ b/include/backend/wayland.h @@ -6,6 +6,7 @@ #include #include #include +#include #include #include @@ -29,9 +30,10 @@ struct wlr_wl_backend { char *seat_name; }; -struct wlr_output_state { +struct wlr_wl_backend_output { + struct wlr_output wlr_output; + struct wlr_wl_backend *backend; - struct wlr_output *wlr_output; struct wl_surface *surface; struct wl_shell_surface *shell_surface; struct wl_egl_window *egl_window; @@ -47,12 +49,12 @@ struct wlr_input_device_state { struct wlr_pointer_state { enum wlr_axis_source axis_source; - struct wlr_output *current_output; + struct wlr_wl_backend_output *current_output; }; void wlr_wl_registry_poll(struct wlr_wl_backend *backend); -struct wlr_output *wlr_wl_output_for_surface(struct wlr_wl_backend *backend, - struct wl_surface *surface); +struct wlr_wl_backend_output *wlr_wl_output_for_surface( + struct wlr_wl_backend *backend, struct wl_surface *surface); extern const struct wl_seat_listener seat_listener; diff --git a/include/wlr/interfaces/wlr_output.h b/include/wlr/interfaces/wlr_output.h index 5f9bfdd2..efc8ef43 100644 --- a/include/wlr/interfaces/wlr_output.h +++ b/include/wlr/interfaces/wlr_output.h @@ -4,21 +4,19 @@ #include struct wlr_output_impl { - void (*enable)(struct wlr_output_state *state, bool enable); - bool (*set_mode)(struct wlr_output_state *state, - struct wlr_output_mode *mode); - void (*transform)(struct wlr_output_state *state, + void (*enable)(struct wlr_output *output, bool enable); + bool (*set_mode)(struct wlr_output *output, struct wlr_output_mode *mode); + void (*transform)(struct wlr_output *output, enum wl_output_transform transform); - bool (*set_cursor)(struct wlr_output_state *state, - const uint8_t *buf, int32_t stride, uint32_t width, uint32_t height); - bool (*move_cursor)(struct wlr_output_state *state, int x, int y); - void (*destroy)(struct wlr_output_state *state); - void (*make_current)(struct wlr_output_state *state); - void (*swap_buffers)(struct wlr_output_state *state); + bool (*set_cursor)(struct wlr_output *output, const uint8_t *buf, + int32_t stride, uint32_t width, uint32_t height); + bool (*move_cursor)(struct wlr_output *output, int x, int y); + void (*destroy)(struct wlr_output *output); + void (*make_current)(struct wlr_output *output); + void (*swap_buffers)(struct wlr_output *output); }; -struct wlr_output *wlr_output_create(struct wlr_output_impl *impl, - struct wlr_output_state *state); +void wlr_output_init(struct wlr_output *output, const struct wlr_output_impl *impl); void wlr_output_free(struct wlr_output *output); void wlr_output_update_matrix(struct wlr_output *output); struct wl_global *wlr_output_create_global( diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index e57217c2..a669e3bb 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -14,12 +14,10 @@ struct wlr_output_mode { }; struct wlr_output_impl; -struct wlr_output_state; struct wlr_output { const struct wlr_output_impl *impl; - struct wlr_output_state *state; - void *user_data; + struct wl_global *wl_global; struct wl_list wl_resources; -- cgit v1.2.3