diff --git a/src/wayland/meta-wayland-xdg-shell.c b/src/wayland/meta-wayland-xdg-shell.c index 240970c08..5321467a6 100644 --- a/src/wayland/meta-wayland-xdg-shell.c +++ b/src/wayland/meta-wayland-xdg-shell.c @@ -35,6 +35,13 @@ #include "wayland/meta-window-wayland.h" #include "xdg-shell-unstable-v5-server-protocol.h" +/* + * Define GNOME additional states to xdg-shell + * The current reserved range for GNOME is 0x1000 - 0x1FFF + */ + +#define XDG_SURFACE_STATE_GNOME_TILED 0x1000 + struct _MetaWaylandXdgSurface { MetaWaylandSurfaceRoleShellSurface parent; @@ -399,6 +406,13 @@ fill_states (struct wl_array *states, MetaWindow *window) s = wl_array_add (states, sizeof *s); *s = XDG_SURFACE_STATE_ACTIVATED; } + /* GNOME extension to xdg-shell states */ + if (window->tile_mode == META_TILE_LEFT || + window->tile_mode == META_TILE_RIGHT) + { + s = wl_array_add (states, sizeof *s); + *s = XDG_SURFACE_STATE_GNOME_TILED; + } } static void