aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2017-10-24 23:22:27 +0200
committeremersion <contact@emersion.fr>2017-10-24 23:22:27 +0200
commite84d573b9127a431671e1f74773aee53830f8d09 (patch)
tree6b88900447a6a7f763b005371e01bcb9b45db70d /include/wlr
parente521b0404bb1a50326404a47bdb510f8fc46898e (diff)
Complete server-decoration implementation
Diffstat (limited to 'include/wlr')
-rw-r--r--include/wlr/types/wlr_server_decoration.h20
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