aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Crisci <tony@dubstepdish.com>2017-12-03 13:16:41 -0500
committerTony Crisci <tony@dubstepdish.com>2017-12-03 13:39:29 -0500
commit344ca222db6b1811f983cabb80c3ba70e04fd31e (patch)
treea1a4e2e4fad1139caa62c8017d0579f3e3cf98aa
parent8eceaa2291febc70d32d6791693cbbcad407d401 (diff)
wrap server decoration modes
-rw-r--r--include/wlr/types/wlr_server_decoration.h27
-rw-r--r--rootston/desktop.c3
2 files changed, 26 insertions, 4 deletions
diff --git a/include/wlr/types/wlr_server_decoration.h b/include/wlr/types/wlr_server_decoration.h
index b4cac5b7..474a9386 100644
--- a/include/wlr/types/wlr_server_decoration.h
+++ b/include/wlr/types/wlr_server_decoration.h
@@ -3,12 +3,35 @@
#include <wayland-server.h>
+/**
+ * Possible values to use in request_mode and the event mode. Same as
+ * org_kde_kwin_server_decoration_manager_mode.
+ */
+enum wlr_server_decoration_manager_mode {
+ /**
+ * Undecorated: The surface is not decorated at all, neither server nor
+ * client-side. An example is a popup surface which should not be
+ * decorated.
+ */
+ WLR_SERVER_DECORATION_MANAGER_MODE_NONE = 0,
+ /**
+ * Client-side decoration: The decoration is part of the surface and the
+ * client.
+ */
+ WLR_SERVER_DECORATION_MANAGER_MODE_CLIENT = 1,
+ /**
+ * Server-side decoration: The server embeds the surface into a decoration
+ * frame.
+ */
+ WLR_SERVER_DECORATION_MANAGER_MODE_SERVER = 2,
+};
+
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
+ uint32_t default_mode; // enum wlr_server_decoration_manager_mode
struct {
struct wl_signal new_decoration;
@@ -22,7 +45,7 @@ struct wlr_server_decoration {
struct wlr_surface *surface;
struct wl_list link;
- uint32_t mode; // enum org_kde_kwin_server_decoration_manager_mode
+ uint32_t mode; // enum wlr_server_decoration_manager_mode
struct {
struct wl_signal destroy;
diff --git a/rootston/desktop.c b/rootston/desktop.c
index bb3af258..244f7c94 100644
--- a/rootston/desktop.c
+++ b/rootston/desktop.c
@@ -13,7 +13,6 @@
#include <wlr/types/wlr_xcursor_manager.h>
#include <wlr/types/wlr_xdg_shell_v6.h>
#include <wlr/util/log.h>
-#include <server-decoration-protocol.h>
#include "rootston/server.h"
#include "rootston/seat.h"
#include "rootston/xcursor.h"
@@ -468,7 +467,7 @@ struct roots_desktop *desktop_create(struct roots_server *server,
wlr_server_decoration_manager_create(server->wl_display);
wlr_server_decoration_manager_set_default_mode(
desktop->server_decoration_manager,
- ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_CLIENT);
+ WLR_SERVER_DECORATION_MANAGER_MODE_CLIENT);
return desktop;
}