Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Unified Diff: third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h

Issue 2666953004: third_party: Amend version 2 of remote shell protocol (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h
diff --git a/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h b/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h
index 989e6e4d77cdbc5f9fd8fc7cadc4ff90e65fa762..7d180c789f56d29c79bc4ab0370c38eca76889b7 100644
--- a/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h
+++ b/third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-client-protocol.h
@@ -258,7 +258,7 @@ struct zcr_remote_shell_v1_listener {
};
/**
- * @ingroup zcr_remote_shell_v1_iface
+ * @ingroup iface_zcr_remote_shell_v1
*/
static inline int
zcr_remote_shell_v1_add_listener(struct zcr_remote_shell_v1 *zcr_remote_shell_v1,
@@ -268,22 +268,31 @@ zcr_remote_shell_v1_add_listener(struct zcr_remote_shell_v1 *zcr_remote_shell_v1
(void (**)(void)) listener, data);
}
-#define ZCR_REMOTE_SHELL_V1_DESTROY 0
-#define ZCR_REMOTE_SHELL_V1_GET_REMOTE_SURFACE 1
-#define ZCR_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE 2
+#define ZCR_REMOTE_SHELL_V1_DESTROY 0
+#define ZCR_REMOTE_SHELL_V1_GET_REMOTE_SURFACE 1
+#define ZCR_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE 2
/**
* @ingroup iface_zcr_remote_shell_v1
*/
-#define ZCR_REMOTE_SHELL_V1_DESTROY_SINCE_VERSION 1
+#define ZCR_REMOTE_SHELL_V1_ACTIVATED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zcr_remote_shell_v1
+ */
+#define ZCR_REMOTE_SHELL_V1_CONFIGURATION_CHANGED_SINCE_VERSION 1
+
/**
* @ingroup iface_zcr_remote_shell_v1
*/
-#define ZCR_REMOTE_SHELL_V1_GET_REMOTE_SURFACE_SINCE_VERSION 1
+#define ZCR_REMOTE_SHELL_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_shell_v1
*/
-#define ZCR_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE_SINCE_VERSION 1
+#define ZCR_REMOTE_SHELL_V1_GET_REMOTE_SURFACE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zcr_remote_shell_v1
+ */
+#define ZCR_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE_SINCE_VERSION 1
/** @ingroup iface_zcr_remote_shell_v1 */
static inline void
@@ -396,10 +405,35 @@ struct zcr_remote_surface_v1_listener {
void (*state_type_changed)(void *data,
struct zcr_remote_surface_v1 *zcr_remote_surface_v1,
uint32_t state_type);
+ /**
+ * suggest a surface change
+ *
+ * The configure event asks the client to change surface state.
+ *
+ * The origin arguments specify the position, in the compositor
+ * coordinate space, of the virtual display used by the client to
+ * simulate multiple displays. The client must offset window
+ * positions in set_window_geometry requests by this origin in
+ * order to convert between coordinate spaces.
+ *
+ * Clients should arrange their surface for the new state, and then
+ * send an ack_configure request with the serial sent in this
+ * configure event at some point before committing the new surface.
+ *
+ * If the client receives multiple configure events before it can
+ * respond to one, it is free to discard all but the last event it
+ * received.
+ * @since 2
+ */
+ void (*configure)(void *data,
+ struct zcr_remote_surface_v1 *zcr_remote_surface_v1,
+ int32_t origin_x,
+ int32_t origin_y,
+ uint32_t serial);
};
/**
- * @ingroup zcr_remote_surface_v1_iface
+ * @ingroup iface_zcr_remote_surface_v1
*/
static inline int
zcr_remote_surface_v1_add_listener(struct zcr_remote_surface_v1 *zcr_remote_surface_v1,
@@ -409,107 +443,125 @@ zcr_remote_surface_v1_add_listener(struct zcr_remote_surface_v1 *zcr_remote_surf
(void (**)(void)) listener, data);
}
-#define ZCR_REMOTE_SURFACE_V1_DESTROY 0
-#define ZCR_REMOTE_SURFACE_V1_SET_APP_ID 1
-#define ZCR_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY 2
-#define ZCR_REMOTE_SURFACE_V1_SET_SCALE 3
-#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW 4
-#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY 5
-#define ZCR_REMOTE_SURFACE_V1_SET_TITLE 6
-#define ZCR_REMOTE_SURFACE_V1_SET_TOP_INSET 7
-#define ZCR_REMOTE_SURFACE_V1_ACTIVATE 8
-#define ZCR_REMOTE_SURFACE_V1_MAXIMIZE 9
-#define ZCR_REMOTE_SURFACE_V1_MINIMIZE 10
-#define ZCR_REMOTE_SURFACE_V1_RESTORE 11
-#define ZCR_REMOTE_SURFACE_V1_FULLSCREEN 12
-#define ZCR_REMOTE_SURFACE_V1_UNFULLSCREEN 13
-#define ZCR_REMOTE_SURFACE_V1_PIN 14
-#define ZCR_REMOTE_SURFACE_V1_UNPIN 15
-#define ZCR_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL 16
-#define ZCR_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL 17
-#define ZCR_REMOTE_SURFACE_V1_SET_MOVING 18
-#define ZCR_REMOTE_SURFACE_V1_UNSET_MOVING 19
+#define ZCR_REMOTE_SURFACE_V1_DESTROY 0
+#define ZCR_REMOTE_SURFACE_V1_SET_APP_ID 1
+#define ZCR_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY 2
+#define ZCR_REMOTE_SURFACE_V1_SET_SCALE 3
+#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW 4
+#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY 5
+#define ZCR_REMOTE_SURFACE_V1_SET_TITLE 6
+#define ZCR_REMOTE_SURFACE_V1_SET_TOP_INSET 7
+#define ZCR_REMOTE_SURFACE_V1_ACTIVATE 8
+#define ZCR_REMOTE_SURFACE_V1_MAXIMIZE 9
+#define ZCR_REMOTE_SURFACE_V1_MINIMIZE 10
+#define ZCR_REMOTE_SURFACE_V1_RESTORE 11
+#define ZCR_REMOTE_SURFACE_V1_FULLSCREEN 12
+#define ZCR_REMOTE_SURFACE_V1_UNFULLSCREEN 13
+#define ZCR_REMOTE_SURFACE_V1_PIN 14
+#define ZCR_REMOTE_SURFACE_V1_UNPIN 15
+#define ZCR_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL 16
+#define ZCR_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL 17
+#define ZCR_REMOTE_SURFACE_V1_ACK_CONFIGURE 18
+#define ZCR_REMOTE_SURFACE_V1_SET_MOVING 19
+#define ZCR_REMOTE_SURFACE_V1_UNSET_MOVING 20
+
+/**
+ * @ingroup iface_zcr_remote_surface_v1
+ */
+#define ZCR_REMOTE_SURFACE_V1_CLOSE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zcr_remote_surface_v1
+ */
+#define ZCR_REMOTE_SURFACE_V1_STATE_TYPE_CHANGED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zcr_remote_surface_v1
+ */
+#define ZCR_REMOTE_SURFACE_V1_CONFIGURE_SINCE_VERSION 2
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_DESTROY_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_APP_ID_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_APP_ID_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_SCALE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_SCALE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_TITLE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_TITLE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_TOP_INSET_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_TOP_INSET_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_ACTIVATE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_ACTIVATE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_MAXIMIZE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_MAXIMIZE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_MINIMIZE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_MINIMIZE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_RESTORE_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_RESTORE_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_FULLSCREEN_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_FULLSCREEN_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_UNFULLSCREEN_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_UNFULLSCREEN_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_PIN_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_PIN_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_UNPIN_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_UNPIN_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL_SINCE_VERSION 1
+#define ZCR_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL_SINCE_VERSION 1
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_SET_MOVING_SINCE_VERSION 2
+#define ZCR_REMOTE_SURFACE_V1_ACK_CONFIGURE_SINCE_VERSION 2
/**
* @ingroup iface_zcr_remote_surface_v1
*/
-#define ZCR_REMOTE_SURFACE_V1_UNSET_MOVING_SINCE_VERSION 2
+#define ZCR_REMOTE_SURFACE_V1_SET_MOVING_SINCE_VERSION 2
+/**
+ * @ingroup iface_zcr_remote_surface_v1
+ */
+#define ZCR_REMOTE_SURFACE_V1_UNSET_MOVING_SINCE_VERSION 2
/** @ingroup iface_zcr_remote_surface_v1 */
static inline void
@@ -827,6 +879,36 @@ zcr_remote_surface_v1_unset_system_modal(struct zcr_remote_surface_v1 *zcr_remot
/**
* @ingroup iface_zcr_remote_surface_v1
*
+ * When a configure event is received, if a client commits the
+ * surface in response to the configure event, then the client
+ * must make an ack_configure request sometime before the commit
+ * request, passing along the serial of the configure event.
+ *
+ * For instance, the compositor might use this information during display
+ * configuration to change its coordinate space for set_window_geometry
+ * requests only when the client has switched to the new coordinate space.
+ *
+ * If the client receives multiple configure events before it
+ * can respond to one, it only has to ack the last configure event.
+ *
+ * A client is not required to commit immediately after sending
+ * an ack_configure request - it may even ack_configure several times
+ * before its next surface commit.
+ *
+ * A client may send multiple ack_configure requests before committing, but
+ * only the last request sent before a commit indicates which configure
+ * event the client really is responding to.
+ */
+static inline void
+zcr_remote_surface_v1_ack_configure(struct zcr_remote_surface_v1 *zcr_remote_surface_v1, uint32_t serial)
+{
+ wl_proxy_marshal((struct wl_proxy *) zcr_remote_surface_v1,
+ ZCR_REMOTE_SURFACE_V1_ACK_CONFIGURE, serial);
+}
+
+/**
+ * @ingroup iface_zcr_remote_surface_v1
+ *
* Notifies the compositor when an interactive, user-driven move of the
* surface starts. The compositor may assume that subsequent
* set_window_geometry requests are position updates until it receives a
@@ -853,12 +935,13 @@ zcr_remote_surface_v1_unset_moving(struct zcr_remote_surface_v1 *zcr_remote_surf
ZCR_REMOTE_SURFACE_V1_UNSET_MOVING);
}
-#define ZCR_NOTIFICATION_SURFACE_V1_DESTROY 0
+#define ZCR_NOTIFICATION_SURFACE_V1_DESTROY 0
+
/**
* @ingroup iface_zcr_notification_surface_v1
*/
-#define ZCR_NOTIFICATION_SURFACE_V1_DESTROY_SINCE_VERSION 1
+#define ZCR_NOTIFICATION_SURFACE_V1_DESTROY_SINCE_VERSION 1
/** @ingroup iface_zcr_notification_surface_v1 */
static inline void
« no previous file with comments | « no previous file | third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698