diff options
author | emersion <contact@emersion.fr> | 2017-12-27 13:02:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-27 13:02:49 +0100 |
commit | a79dc7df5103854b2cc5be20e153140862cda05a (patch) | |
tree | ed4ae380d49ffa3c9111628e4ff5fd6f61c05349 /include/wlr | |
parent | e80925017134f397e27cf7196e3379b28d93a8fd (diff) | |
parent | 5c5f0611c418a39dc39e309679de25775caae030 (diff) |
Merge pull request #524 from acrisci/role-committed
[wip] Role committed
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/types/wlr_data_device.h | 1 | ||||
-rw-r--r-- | include/wlr/types/wlr_surface.h | 12 | ||||
-rw-r--r-- | include/wlr/types/wlr_wl_shell.h | 2 | ||||
-rw-r--r-- | include/wlr/types/wlr_xdg_shell_v6.h | 2 | ||||
-rw-r--r-- | include/wlr/xwayland.h | 1 |
5 files changed, 12 insertions, 6 deletions
diff --git a/include/wlr/types/wlr_data_device.h b/include/wlr/types/wlr_data_device.h index 4893bbf4..92d15972 100644 --- a/include/wlr/types/wlr_data_device.h +++ b/include/wlr/types/wlr_data_device.h @@ -73,7 +73,6 @@ struct wlr_drag_icon { } events; struct wl_listener surface_destroy; - struct wl_listener surface_commit; struct wl_listener seat_client_destroy; }; diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h index c8e3761a..9f88d044 100644 --- a/include/wlr/types/wlr_surface.h +++ b/include/wlr/types/wlr_surface.h @@ -77,6 +77,10 @@ struct wlr_surface { struct wl_listener compositor_listener; void *compositor_data; + // surface commit callback for the role that runs before all others + void (*role_committed)(struct wlr_surface *surface, void *role_data); + void *role_data; + // subsurface properties struct wlr_subsurface *subsurface; struct wl_list subsurface_list; // wlr_subsurface::parent_link @@ -146,4 +150,12 @@ void wlr_surface_send_leave(struct wlr_surface *surface, void wlr_surface_send_frame_done(struct wlr_surface *surface, const struct timespec *when); +/** + * Set a callback for surface commit that runs before all the other callbacks. + * This is intended for use by the surface role. + */ +void wlr_surface_set_role_committed(struct wlr_surface *surface, + void (*role_committed)(struct wlr_surface *surface, void *role_data), + void *role_data); + #endif diff --git a/include/wlr/types/wlr_wl_shell.h b/include/wlr/types/wlr_wl_shell.h index 29446b04..375477c7 100644 --- a/include/wlr/types/wlr_wl_shell.h +++ b/include/wlr/types/wlr_wl_shell.h @@ -70,7 +70,6 @@ struct wlr_wl_shell_surface { char *class; struct wl_listener surface_destroy_listener; - struct wl_listener surface_commit_listener; struct wlr_wl_shell_surface *parent; struct wl_list popup_link; @@ -79,7 +78,6 @@ struct wlr_wl_shell_surface { struct { struct wl_signal destroy; - struct wl_signal commit; struct wl_signal ping_timeout; struct wl_signal request_move; diff --git a/include/wlr/types/wlr_xdg_shell_v6.h b/include/wlr/types/wlr_xdg_shell_v6.h index b723a950..280bea27 100644 --- a/include/wlr/types/wlr_xdg_shell_v6.h +++ b/include/wlr/types/wlr_xdg_shell_v6.h @@ -122,10 +122,8 @@ struct wlr_xdg_surface_v6 { struct wlr_box *geometry; struct wl_listener surface_destroy_listener; - struct wl_listener surface_commit_listener; struct { - struct wl_signal commit; struct wl_signal destroy; struct wl_signal ping_timeout; diff --git a/include/wlr/xwayland.h b/include/wlr/xwayland.h index 230cfeed..37b09204 100644 --- a/include/wlr/xwayland.h +++ b/include/wlr/xwayland.h @@ -134,7 +134,6 @@ struct wlr_xwayland_surface { } events; struct wl_listener surface_destroy; - struct wl_listener surface_commit; void *data; }; |