diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/backend/drm/drm.h | 19 | ||||
-rw-r--r-- | include/backend/drm/properties.h | 11 | ||||
-rw-r--r-- | include/backend/drm/renderer.h | 20 | ||||
-rw-r--r-- | include/backend/drm/util.h | 4 | ||||
-rw-r--r-- | include/backend/libinput.h | 12 | ||||
-rw-r--r-- | include/backend/wayland.h | 8 | ||||
-rw-r--r-- | include/backend/x11.h | 12 | ||||
-rw-r--r-- | include/render/gles2.h | 17 | ||||
-rw-r--r-- | include/wlr/backend/drm.h | 2 | ||||
-rw-r--r-- | include/wlr/render/egl.h | 2 | ||||
-rw-r--r-- | include/wlr/render/interface.h | 6 | ||||
-rw-r--r-- | include/wlr/render/wlr_renderer.h | 10 | ||||
-rw-r--r-- | include/wlr/types/wlr_compositor.h | 4 | ||||
-rw-r--r-- | include/wlr/types/wlr_layer_shell.h | 2 | ||||
-rw-r--r-- | include/wlr/types/wlr_output_layout.h | 8 | ||||
-rw-r--r-- | include/wlr/types/wlr_region.h | 3 | ||||
-rw-r--r-- | include/wlr/types/wlr_surface.h | 4 | ||||
-rw-r--r-- | include/xwayland/selection.h | 4 |
18 files changed, 77 insertions, 71 deletions
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h index cb10ad20..5d6ff231 100644 --- a/include/backend/drm/drm.h +++ b/include/backend/drm/drm.h @@ -136,17 +136,12 @@ struct wlr_drm_connector { struct wl_list link; }; -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_restore_outputs(struct wlr_drm_backend *drm); -void wlr_drm_connector_cleanup(struct wlr_drm_connector *conn); -void wlr_drm_scan_connectors(struct wlr_drm_backend *state); -int wlr_drm_event(int fd, uint32_t mask, void *data); -void wlr_drm_connector_enable(struct wlr_output *output, bool enable); - -void wlr_drm_connector_start_renderer(struct wlr_drm_connector *conn); - -struct wlr_session *wlr_drm_backend_get_session(struct wlr_backend *backend); +bool check_drm_features(struct wlr_drm_backend *drm); +bool init_drm_resources(struct wlr_drm_backend *drm); +void finish_drm_resources(struct wlr_drm_backend *drm); +void restore_drm_outputs(struct wlr_drm_backend *drm); +void scan_drm_connectors(struct wlr_drm_backend *state); +int handle_drm_event(int fd, uint32_t mask, void *data); +void enable_drm_connector(struct wlr_output *output, bool enable); #endif diff --git a/include/backend/drm/properties.h b/include/backend/drm/properties.h index 3cf8cc87..1b3b2241 100644 --- a/include/backend/drm/properties.h +++ b/include/backend/drm/properties.h @@ -59,11 +59,12 @@ union wlr_drm_plane_props { uint32_t props[12]; }; -bool wlr_drm_get_connector_props(int fd, uint32_t id, union wlr_drm_connector_props *out); -bool wlr_drm_get_crtc_props(int fd, uint32_t id, union wlr_drm_crtc_props *out); -bool wlr_drm_get_plane_props(int fd, uint32_t id, union wlr_drm_plane_props *out); +bool get_drm_connector_props(int fd, uint32_t id, + union wlr_drm_connector_props *out); +bool get_drm_crtc_props(int fd, uint32_t id, union wlr_drm_crtc_props *out); +bool get_drm_plane_props(int fd, uint32_t id, union wlr_drm_plane_props *out); -bool wlr_drm_get_prop(int fd, uint32_t obj, uint32_t prop, uint64_t *ret); -void *wlr_drm_get_prop_blob(int fd, uint32_t obj, uint32_t prop, size_t *ret_len); +bool get_drm_prop(int fd, uint32_t obj, uint32_t prop, uint64_t *ret); +void *get_drm_prop_blob(int fd, uint32_t obj, uint32_t prop, size_t *ret_len); #endif diff --git a/include/backend/drm/renderer.h b/include/backend/drm/renderer.h index 73adfc27..5e15f3d5 100644 --- a/include/backend/drm/renderer.h +++ b/include/backend/drm/renderer.h @@ -31,25 +31,25 @@ struct wlr_drm_surface { struct gbm_bo *back; }; -bool wlr_drm_renderer_init(struct wlr_drm_backend *drm, +bool init_drm_renderer(struct wlr_drm_backend *drm, struct wlr_drm_renderer *renderer); -void wlr_drm_renderer_finish(struct wlr_drm_renderer *renderer); +void finish_drm_renderer(struct wlr_drm_renderer *renderer); -bool wlr_drm_surface_init(struct wlr_drm_surface *surf, +bool init_drm_surface(struct wlr_drm_surface *surf, struct wlr_drm_renderer *renderer, uint32_t width, uint32_t height, uint32_t format, uint32_t flags); -bool wlr_drm_plane_surfaces_init(struct wlr_drm_plane *plane, +bool init_drm_plane_surfaces(struct wlr_drm_plane *plane, struct wlr_drm_backend *drm, int32_t width, uint32_t height, uint32_t format); -void wlr_drm_surface_finish(struct wlr_drm_surface *surf); -bool wlr_drm_surface_make_current(struct wlr_drm_surface *surf, int *buffer_age); -struct gbm_bo *wlr_drm_surface_swap_buffers(struct wlr_drm_surface *surf, +void finish_drm_surface(struct wlr_drm_surface *surf); +bool make_drm_surface_current(struct wlr_drm_surface *surf, int *buffer_age); +struct gbm_bo *swap_drm_surface_buffers(struct wlr_drm_surface *surf, pixman_region32_t *damage); -struct gbm_bo *wlr_drm_surface_get_front(struct wlr_drm_surface *surf); -void wlr_drm_surface_post(struct wlr_drm_surface *surf); -struct gbm_bo *wlr_drm_surface_mgpu_copy(struct wlr_drm_surface *dest, +struct gbm_bo *get_drm_surface_front(struct wlr_drm_surface *surf); +void post_drm_surface(struct wlr_drm_surface *surf); +struct gbm_bo *copy_drm_surface_mgpu(struct wlr_drm_surface *dest, struct gbm_bo *src); #endif diff --git a/include/backend/drm/util.h b/include/backend/drm/util.h index 25da858f..0b55182b 100644 --- a/include/backend/drm/util.h +++ b/include/backend/drm/util.h @@ -9,7 +9,8 @@ // Calculates a more accurate refresh rate (mHz) than what mode itself provides int32_t calculate_refresh_rate(drmModeModeInfo *mode); // Populates the make/model/phys_{width,height} of output from the edid data -void parse_edid(struct wlr_output *restrict output, size_t len, const uint8_t *data); +void parse_edid(struct wlr_output *restrict output, size_t len, + const uint8_t *data); // Returns the string representation of a DRM output type const char *conn_get_name(uint32_t type_id); // Returns the DRM framebuffer id for a gbm_bo @@ -36,4 +37,5 @@ enum { size_t match_obj(size_t num_objs, const uint32_t objs[static restrict num_objs], size_t num_res, const uint32_t res[static restrict num_res], uint32_t out[static restrict num_res]); + #endif diff --git a/include/backend/libinput.h b/include/backend/libinput.h index 4eee7eb8..f0928133 100644 --- a/include/backend/libinput.h +++ b/include/backend/libinput.h @@ -31,19 +31,19 @@ struct wlr_libinput_input_device { uint32_t usec_to_msec(uint64_t usec); -void wlr_libinput_event(struct wlr_libinput_backend *state, +void handle_libinput_event(struct wlr_libinput_backend *state, struct libinput_event *event); struct wlr_input_device *get_appropriate_device( enum wlr_input_device_type desired_type, struct libinput_device *device); -struct wlr_keyboard *wlr_libinput_keyboard_create( +struct wlr_keyboard *create_libinput_keyboard( struct libinput_device *device); void handle_keyboard_key(struct libinput_event *event, struct libinput_device *device); -struct wlr_pointer *wlr_libinput_pointer_create( +struct wlr_pointer *create_libinput_pointer( struct libinput_device *device); void handle_pointer_motion(struct libinput_event *event, struct libinput_device *device); @@ -54,7 +54,7 @@ void handle_pointer_button(struct libinput_event *event, void handle_pointer_axis(struct libinput_event *event, struct libinput_device *device); -struct wlr_touch *wlr_libinput_touch_create( +struct wlr_touch *create_libinput_touch( struct libinput_device *device); void handle_touch_down(struct libinput_event *event, struct libinput_device *device); @@ -65,7 +65,7 @@ void handle_touch_motion(struct libinput_event *event, void handle_touch_cancel(struct libinput_event *event, struct libinput_device *device); -struct wlr_tablet_tool *wlr_libinput_tablet_tool_create( +struct wlr_tablet_tool *create_libinput_tablet_tool( struct libinput_device *device); void handle_tablet_tool_axis(struct libinput_event *event, struct libinput_device *device); @@ -76,7 +76,7 @@ void handle_tablet_tool_tip(struct libinput_event *event, void handle_tablet_tool_button(struct libinput_event *event, struct libinput_device *device); -struct wlr_tablet_pad *wlr_libinput_tablet_pad_create( +struct wlr_tablet_pad *create_libinput_tablet_pad( struct libinput_device *device); void handle_tablet_pad_button(struct libinput_event *event, struct libinput_device *device); diff --git a/include/backend/wayland.h b/include/backend/wayland.h index 00b6ae89..d1af954c 100644 --- a/include/backend/wayland.h +++ b/include/backend/wayland.h @@ -74,11 +74,11 @@ struct wlr_wl_pointer { struct wl_listener output_destroy_listener; }; -void wlr_wl_registry_poll(struct wlr_wl_backend *backend); -void wlr_wl_output_update_cursor(struct wlr_wl_backend_output *output); -struct wlr_wl_backend_output *wlr_wl_output_for_surface( +void poll_wl_registry(struct wlr_wl_backend *backend); +void update_wl_output_cursor(struct wlr_wl_backend_output *output); +struct wlr_wl_backend_output *get_wl_output_for_surface( struct wlr_wl_backend *backend, struct wl_surface *surface); -void wlr_wl_output_layout_get_box(struct wlr_wl_backend *backend, +void get_wl_output_layout_box(struct wlr_wl_backend *backend, struct wlr_box *box); extern const struct wl_seat_listener seat_listener; diff --git a/include/backend/x11.h b/include/backend/x11.h index aa946912..6ab1cec6 100644 --- a/include/backend/x11.h +++ b/include/backend/x11.h @@ -72,19 +72,19 @@ struct wlr_x11_backend { struct wl_listener display_destroy; }; -struct wlr_x11_output *x11_output_from_window_id(struct wlr_x11_backend *x11, +struct wlr_x11_output *get_x11_output_from_window_id(struct wlr_x11_backend *x11, xcb_window_t window); -void x11_output_layout_get_box(struct wlr_x11_backend *backend, +void get_x11_output_layout_box(struct wlr_x11_backend *backend, struct wlr_box *box); -const struct wlr_input_device_impl input_device_impl; +extern const struct wlr_input_device_impl input_device_impl; -void x11_handle_input_event(struct wlr_x11_backend *x11, +void handle_x11_input_event(struct wlr_x11_backend *x11, xcb_generic_event_t *event); -void x11_update_pointer_position(struct wlr_x11_output *output, +void update_x11_pointer_position(struct wlr_x11_output *output, xcb_timestamp_t time); -void x11_output_handle_configure_notify(struct wlr_x11_output *output, +void handle_x11_configure_notify(struct wlr_x11_output *output, xcb_configure_notify_event_t *event); #endif diff --git a/include/render/gles2.h b/include/render/gles2.h index 792f1b40..99beff29 100644 --- a/include/render/gles2.h +++ b/include/render/gles2.h @@ -18,7 +18,7 @@ extern PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2DOES; -struct gles2_pixel_format { +struct wlr_gles2_pixel_format { uint32_t wl_format; GLint gl_format, gl_type; int depth, bpp; @@ -68,15 +68,16 @@ struct wlr_gles2_texture { }; }; -const struct gles2_pixel_format *gles2_format_from_wl(enum wl_shm_format fmt); -const enum wl_shm_format *gles2_formats(size_t *len); +const struct wlr_gles2_pixel_format *get_gles2_format_from_wl( + enum wl_shm_format fmt); +const enum wl_shm_format *get_gles2_formats(size_t *len); -struct wlr_gles2_texture *gles2_get_texture_in_context( +struct wlr_gles2_texture *get_gles2_texture_in_context( struct wlr_texture *wlr_texture); -void gles2_push_marker(const char *file, const char *func); -void gles2_pop_marker(void); -#define GLES2_DEBUG_PUSH gles2_push_marker(wlr_strip_path(__FILE__), __func__) -#define GLES2_DEBUG_POP gles2_pop_marker() +void push_gles2_marker(const char *file, const char *func); +void pop_gles2_marker(void); +#define PUSH_GLES2_DEBUG push_gles2_marker(wlr_strip_path(__FILE__), __func__) +#define POP_GLES2_DEBUG pop_gles2_marker() #endif diff --git a/include/wlr/backend/drm.h b/include/wlr/backend/drm.h index 0c9e5c8b..14fafe10 100644 --- a/include/wlr/backend/drm.h +++ b/include/wlr/backend/drm.h @@ -19,4 +19,6 @@ struct wlr_backend *wlr_drm_backend_create(struct wl_display *display, bool wlr_backend_is_drm(struct wlr_backend *backend); bool wlr_output_is_drm(struct wlr_output *output); +struct wlr_session *wlr_drm_backend_get_session(struct wlr_backend *backend); + #endif diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h index 0b7f1dde..4d837138 100644 --- a/include/wlr/render/egl.h +++ b/include/wlr/render/egl.h @@ -98,4 +98,6 @@ bool wlr_egl_is_current(struct wlr_egl *egl); bool wlr_egl_swap_buffers(struct wlr_egl *egl, EGLSurface surface, pixman_region32_t *damage); +bool wlr_egl_destroy_surface(struct wlr_egl *egl, EGLSurface surface); + #endif diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h index 9dbe7247..e7cdce0a 100644 --- a/include/wlr/render/interface.h +++ b/include/wlr/render/interface.h @@ -11,12 +11,6 @@ #include <wlr/types/wlr_linux_dmabuf.h> #include <wlr/types/wlr_output.h> -struct wlr_renderer_impl; - -struct wlr_renderer { - const struct wlr_renderer_impl *impl; -}; - struct wlr_renderer_impl { void (*begin)(struct wlr_renderer *renderer, uint32_t width, uint32_t height); diff --git a/include/wlr/render/wlr_renderer.h b/include/wlr/render/wlr_renderer.h index eb365762..21f9c16c 100644 --- a/include/wlr/render/wlr_renderer.h +++ b/include/wlr/render/wlr_renderer.h @@ -6,9 +6,15 @@ #include <wlr/render/wlr_texture.h> #include <wlr/types/wlr_box.h> -struct wlr_output; +struct wlr_renderer_impl; -struct wlr_renderer; +struct wlr_renderer { + const struct wlr_renderer_impl *impl; + + struct { + struct wl_signal destroy; + } events; +}; void wlr_renderer_begin(struct wlr_renderer *r, int width, int height); void wlr_renderer_end(struct wlr_renderer *r); diff --git a/include/wlr/types/wlr_compositor.h b/include/wlr/types/wlr_compositor.h index 816ff713..f6be0a74 100644 --- a/include/wlr/types/wlr_compositor.h +++ b/include/wlr/types/wlr_compositor.h @@ -9,13 +9,15 @@ struct wlr_surface; struct wlr_subcompositor { struct wl_global *wl_global; struct wl_list wl_resources; + struct wl_list subsurface_resources; }; struct wlr_compositor { struct wl_global *wl_global; struct wl_list wl_resources; struct wlr_renderer *renderer; - struct wl_list surfaces; + struct wl_list surface_resources; + struct wl_list region_resources; struct wlr_subcompositor subcompositor; diff --git a/include/wlr/types/wlr_layer_shell.h b/include/wlr/types/wlr_layer_shell.h index 6040478d..22352906 100644 --- a/include/wlr/types/wlr_layer_shell.h +++ b/include/wlr/types/wlr_layer_shell.h @@ -61,7 +61,7 @@ struct wlr_layer_surface { struct wlr_layer_shell *shell; struct wl_list popups; // wlr_xdg_popup::link - const char *namespace; + char *namespace; enum zwlr_layer_shell_v1_layer layer; bool added, configured, mapped, closed; diff --git a/include/wlr/types/wlr_output_layout.h b/include/wlr/types/wlr_output_layout.h index ccb2cd61..759c8ccf 100644 --- a/include/wlr/types/wlr_output_layout.h +++ b/include/wlr/types/wlr_output_layout.h @@ -105,10 +105,10 @@ struct wlr_output *wlr_output_layout_get_center_output( struct wlr_output_layout *layout); enum wlr_direction { - WLR_DIRECTION_UP = 0, - WLR_DIRECTION_DOWN = 1, - WLR_DIRECTION_LEFT = 2, - WLR_DIRECTION_RIGHT = 4, + WLR_DIRECTION_UP = 1, + WLR_DIRECTION_DOWN = 2, + WLR_DIRECTION_LEFT = 4, + WLR_DIRECTION_RIGHT = 8, }; /** diff --git a/include/wlr/types/wlr_region.h b/include/wlr/types/wlr_region.h index ffacea72..a79ab61d 100644 --- a/include/wlr/types/wlr_region.h +++ b/include/wlr/types/wlr_region.h @@ -8,8 +8,7 @@ struct wl_resource; /* * Implements the given resource as region. */ -void wlr_region_create(struct wl_client *client, struct wl_resource *res, - uint32_t id); +struct wl_resource *wlr_region_create(struct wl_client *client, uint32_t id); pixman_region32_t *wlr_region_from_resource(struct wl_resource *resource); diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h index 35d47926..5ff9996d 100644 --- a/include/wlr/types/wlr_surface.h +++ b/include/wlr/types/wlr_surface.h @@ -93,6 +93,8 @@ struct wlr_surface { // wlr_subsurface::parent_pending_link struct wl_list subsurface_pending_list; + struct wl_listener renderer_destroy; + void *data; }; @@ -121,7 +123,7 @@ bool wlr_surface_has_buffer(struct wlr_surface *surface); /** * Create the subsurface implementation for this surface. */ -void wlr_surface_make_subsurface(struct wlr_surface *surface, +struct wlr_subsurface *wlr_surface_make_subsurface(struct wlr_surface *surface, struct wlr_surface *parent, uint32_t id); /** diff --git a/include/xwayland/selection.h b/include/xwayland/selection.h index bb3a894d..fc910e46 100644 --- a/include/xwayland/selection.h +++ b/include/xwayland/selection.h @@ -60,8 +60,8 @@ void xwm_handle_selection_notify(struct wlr_xwm *xwm, xcb_selection_notify_event_t *event); int xwm_handle_xfixes_selection_notify(struct wlr_xwm *xwm, xcb_xfixes_selection_notify_event_t *event); -bool wlr_data_source_is_xwayland_data_source(struct wlr_data_source *wlr_source); -bool wlr_primary_selection_source_is_xwayland_primary_selection_source( +bool data_source_is_xwayland(struct wlr_data_source *wlr_source); +bool primary_selection_source_is_xwayland( struct wlr_primary_selection_source *wlr_source); void xwm_seat_handle_start_drag(struct wlr_xwm *xwm, struct wlr_drag *drag); |