Complete server-decoration implementation

This commit is contained in:
emersion 2017-10-24 23:22:27 +02:00
parent e521b0404b
commit e84d573b91
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48
2 changed files with 153 additions and 11 deletions

View file

@ -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