diff options
author | emersion <contact@emersion.fr> | 2017-10-24 23:22:27 +0200 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2017-10-24 23:22:27 +0200 |
commit | e84d573b9127a431671e1f74773aee53830f8d09 (patch) | |
tree | 6b88900447a6a7f763b005371e01bcb9b45db70d /include/wlr | |
parent | e521b0404bb1a50326404a47bdb510f8fc46898e (diff) |
Complete server-decoration implementation
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/types/wlr_server_decoration.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/include/wlr/types/wlr_server_decoration.h b/include/wlr/types/wlr_server_decoration.h index 11c2511c..059aa77f 100644 --- a/include/wlr/types/wlr_server_decoration.h +++ b/include/wlr/types/wlr_server_decoration.h @@ -5,25 +5,45 @@ struct wlr_server_decoration_manager { struct wl_global *wl_global; + struct wl_list wl_resources; struct wl_list decorations; // wlr_server_decoration::link + uint32_t default_mode; // enum org_kde_kwin_server_decoration_manager_mode + + struct { + struct wl_signal new_decoration; + } events; + void *data; }; struct wlr_server_decoration { struct wl_resource *resource; + struct wlr_surface *surface; struct wl_list link; + // enum org_kde_kwin_server_decoration_manager_mode + uint32_t requested_mode; + uint32_t sent_mode; + struct { struct wl_signal destroy; + struct wl_signal request_mode; } events; + struct wl_listener surface_destroy_listener; + void *data; }; struct wlr_server_decoration_manager *wlr_server_decoration_manager_create( struct wl_display *display); +void wlr_server_decoration_manager_set_default_mode( + struct wlr_server_decoration_manager *manager, uint32_t default_mode); void wlr_server_decoration_manager_destroy( struct wlr_server_decoration_manager *manager); +void wlr_server_decoration_send_mode(struct wlr_server_decoration *decoration, + uint32_t mode); + #endif |