diff options
Diffstat (limited to 'include')
-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 |