Index: third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h |
diff --git a/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h b/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h |
index 426a735b2c35b62d34a4041ce121cd0f572a88b1..e5bf44baf22a68f4353c2b873000eac921212b3c 100644 |
--- a/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h |
+++ b/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h |
@@ -172,6 +172,27 @@ enum zwp_remote_shell_v1_error { |
}; |
#endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ |
+#ifndef ZWP_REMOTE_SHELL_V1_SHELL_MODE_ENUM |
+#define ZWP_REMOTE_SHELL_V1_SHELL_MODE_ENUM |
+/** |
+ * @ingroup iface_zwp_remote_shell_v1 |
+ * the mode of the shell |
+ * |
+ * Determine how a remote surface should be stacked relative to other |
+ * shell surfaces. |
+ */ |
+enum zwp_remote_shell_v1_shell_mode { |
+ /** |
+ * mulitple windows |
+ */ |
+ ZWP_REMOTE_SHELL_V1_SHELL_MODE_WINDOWED = 1, |
+ /** |
+ * restricted mode for table |
+ */ |
+ ZWP_REMOTE_SHELL_V1_SHELL_MODE_TABLET = 2, |
+}; |
+#endif /* ZWP_REMOTE_SHELL_V1_SHELL_MODE_ENUM */ |
+ |
/** |
* @ingroup iface_zwp_remote_shell_v1 |
* @struct zwp_remote_shell_v1_interface |
@@ -222,6 +243,7 @@ struct zwp_remote_shell_v1_interface { |
#define ZWP_REMOTE_SHELL_V1_CONFIGURE 0 |
#define ZWP_REMOTE_SHELL_V1_ACTIVATED 1 |
+#define ZWP_REMOTE_SHELL_V1_SHELL_MODE_CHANGED 2 |
/** |
* @ingroup iface_zwp_remote_shell_v1 |
@@ -231,6 +253,10 @@ struct zwp_remote_shell_v1_interface { |
* @ingroup iface_zwp_remote_shell_v1 |
*/ |
#define ZWP_REMOTE_SHELL_V1_ACTIVATED_SINCE_VERSION 1 |
+/** |
+ * @ingroup iface_zwp_remote_shell_v1 |
+ */ |
+#define ZWP_REMOTE_SHELL_V1_SHELL_MODE_CHANGED_SINCE_VERSION 7 |
/** |
* @ingroup iface_zwp_remote_shell_v1 |
@@ -255,6 +281,17 @@ zwp_remote_shell_v1_send_activated(struct wl_resource *resource_, struct wl_reso |
} |
/** |
+ * @ingroup iface_zwp_remote_shell_v1 |
+ * Sends an shell_mode_changed event to the client owning the resource. |
+ * @param resource_ The client's resource |
+ */ |
+static inline void |
+zwp_remote_shell_v1_send_shell_mode_changed(struct wl_resource *resource_, uint32_t shell_mode) |
+{ |
+ wl_resource_post_event(resource_, ZWP_REMOTE_SHELL_V1_SHELL_MODE_CHANGED, shell_mode); |
+} |
+ |
+/** |
* @ingroup iface_zwp_remote_surface_v1 |
* @struct zwp_remote_surface_v1_interface |
*/ |
@@ -459,6 +496,22 @@ struct zwp_remote_surface_v1_interface { |
void (*set_top_inset)(struct wl_client *client, |
struct wl_resource *resource, |
int32_t height); |
+ /** |
+ * suggests a re-layout of remote shell input area |
+ * |
+ * Suggests a surface should become system modal. |
+ * @since 7 |
+ */ |
+ void (*set_system_modal)(struct wl_client *client, |
+ struct wl_resource *resource); |
+ /** |
+ * suggests a re-layout of remote shell input area |
+ * |
+ * Suggests a surface should become non system modal. |
+ * @since 7 |
+ */ |
+ void (*unset_system_modal)(struct wl_client *client, |
+ struct wl_resource *resource); |
}; |
#define ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN 0 |