| OLD | NEW |
| 1 /* Generated by wayland-scanner 1.11.0 */ | 1 /* |
| 2 | |
| 3 #ifndef REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H | |
| 4 #define REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H | |
| 5 | |
| 6 #include <stdint.h> | |
| 7 #include <stddef.h> | |
| 8 #include "wayland-client.h" | |
| 9 | |
| 10 #ifdef __cplusplus | |
| 11 extern "C" { | |
| 12 #endif | |
| 13 | |
| 14 /** | |
| 15 * @page page_remote_shell_unstable_v1 The remote_shell_unstable_v1 protocol | |
| 16 * Create remote desktop-style surfaces | |
| 17 * | |
| 18 * @section page_desc_remote_shell_unstable_v1 Description | |
| 19 * | |
| 20 * remote_shell allows clients to turn a wl_surface into a "real window" | |
| 21 * which can be stacked and activated by the user. | |
| 22 * | |
| 23 * Warning! The protocol described in this file is experimental and backward | |
| 24 * incompatible changes may be made. Backward compatible changes may be added | |
| 25 * together with the corresponding interface version bump. Backward | |
| 26 * incompatible changes are done by bumping the version number in the protocol | |
| 27 * and interface names and resetting the interface version. Once the protocol | |
| 28 * is to be declared stable, the 'z' prefix and the version number in the | |
| 29 * protocol and interface names are removed and the interface version number is | |
| 30 * reset. | |
| 31 * | |
| 32 * @section page_ifaces_remote_shell_unstable_v1 Interfaces | |
| 33 * - @subpage page_iface_zwp_remote_shell_v1 - remote_shell | |
| 34 * - @subpage page_iface_zwp_remote_surface_v1 - A desktop window | |
| 35 * @section page_copyright_remote_shell_unstable_v1 Copyright | |
| 36 * <pre> | |
| 37 * | |
| 38 * Copyright 2016 The Chromium Authors. | 2 * Copyright 2016 The Chromium Authors. |
| 39 * | 3 * |
| 40 * Permission is hereby granted, free of charge, to any person obtaining a | 4 * Permission is hereby granted, free of charge, to any person obtaining a |
| 41 * copy of this software and associated documentation files (the "Software"), | 5 * copy of this software and associated documentation files (the "Software"), |
| 42 * to deal in the Software without restriction, including without limitation | 6 * to deal in the Software without restriction, including without limitation |
| 43 * the rights to use, copy, modify, merge, publish, distribute, sublicense, | 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| 44 * and/or sell copies of the Software, and to permit persons to whom the | 8 * and/or sell copies of the Software, and to permit persons to whom the |
| 45 * Software is furnished to do so, subject to the following conditions: | 9 * Software is furnished to do so, subject to the following conditions: |
| 46 * | 10 * |
| 47 * The above copyright notice and this permission notice (including the next | 11 * The above copyright notice and this permission notice (including the next |
| 48 * paragraph) shall be included in all copies or substantial portions of the | 12 * paragraph) shall be included in all copies or substantial portions of the |
| 49 * Software. | 13 * Software. |
| 50 * | 14 * |
| 51 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 52 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 53 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | 17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| 54 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| 55 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | 19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| 56 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
| 57 * DEALINGS IN THE SOFTWARE. | 21 * DEALINGS IN THE SOFTWARE. |
| 58 * </pre> | |
| 59 */ | 22 */ |
| 60 struct wl_surface; | 23 |
| 24 #ifndef REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H |
| 25 #define REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H |
| 26 |
| 27 #ifdef __cplusplus |
| 28 extern "C" { |
| 29 #endif |
| 30 |
| 31 #include <stdint.h> |
| 32 #include <stddef.h> |
| 33 #include "wayland-client.h" |
| 34 |
| 35 struct wl_client; |
| 36 struct wl_resource; |
| 37 |
| 61 struct zwp_remote_shell_v1; | 38 struct zwp_remote_shell_v1; |
| 62 struct zwp_remote_surface_v1; | 39 struct zwp_remote_surface_v1; |
| 40 struct zwp_notification_surface_v1; |
| 63 | 41 |
| 64 /** | |
| 65 * @page page_iface_zwp_remote_shell_v1 zwp_remote_shell_v1 | |
| 66 * @section page_iface_zwp_remote_shell_v1_desc Description | |
| 67 * | |
| 68 * The global interface that allows clients to turn a wl_surface into a | |
| 69 * "real window" which is remotely managed but can be stacked, activated | |
| 70 * and made fullscreen by the user. | |
| 71 * @section page_iface_zwp_remote_shell_v1_api API | |
| 72 * See @ref iface_zwp_remote_shell_v1. | |
| 73 */ | |
| 74 /** | |
| 75 * @defgroup iface_zwp_remote_shell_v1 The zwp_remote_shell_v1 interface | |
| 76 * | |
| 77 * The global interface that allows clients to turn a wl_surface into a | |
| 78 * "real window" which is remotely managed but can be stacked, activated | |
| 79 * and made fullscreen by the user. | |
| 80 */ | |
| 81 extern const struct wl_interface zwp_remote_shell_v1_interface; | 42 extern const struct wl_interface zwp_remote_shell_v1_interface; |
| 82 /** | |
| 83 * @page page_iface_zwp_remote_surface_v1 zwp_remote_surface_v1 | |
| 84 * @section page_iface_zwp_remote_surface_v1_desc Description | |
| 85 * | |
| 86 * An interface that may be implemented by a wl_surface, for | |
| 87 * implementations that provide a desktop-style user interface | |
| 88 * and allows for remotely managed windows. | |
| 89 * | |
| 90 * It provides requests to treat surfaces like windows, allowing to set | |
| 91 * properties like app id and geometry. | |
| 92 * | |
| 93 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 94 * for the remote_surface state to take effect. | |
| 95 * | |
| 96 * For a surface to be mapped by the compositor the client must have | |
| 97 * committed both an remote_surface state and a buffer. | |
| 98 * @section page_iface_zwp_remote_surface_v1_api API | |
| 99 * See @ref iface_zwp_remote_surface_v1. | |
| 100 */ | |
| 101 /** | |
| 102 * @defgroup iface_zwp_remote_surface_v1 The zwp_remote_surface_v1 interface | |
| 103 * | |
| 104 * An interface that may be implemented by a wl_surface, for | |
| 105 * implementations that provide a desktop-style user interface | |
| 106 * and allows for remotely managed windows. | |
| 107 * | |
| 108 * It provides requests to treat surfaces like windows, allowing to set | |
| 109 * properties like app id and geometry. | |
| 110 * | |
| 111 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 112 * for the remote_surface state to take effect. | |
| 113 * | |
| 114 * For a surface to be mapped by the compositor the client must have | |
| 115 * committed both an remote_surface state and a buffer. | |
| 116 */ | |
| 117 extern const struct wl_interface zwp_remote_surface_v1_interface; | 43 extern const struct wl_interface zwp_remote_surface_v1_interface; |
| 44 extern const struct wl_interface zwp_notification_surface_v1_interface; |
| 118 | 45 |
| 119 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | 46 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 120 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | 47 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 121 /** | 48 /** |
| 122 * @ingroup iface_zwp_remote_shell_v1 | 49 * zwp_remote_shell_v1_container - containers for remote surfaces |
| 123 * containers for remote surfaces | 50 * @ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT: default container |
| 51 * @ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY: system modal container |
| 124 * | 52 * |
| 125 * Determine how a remote surface should be stacked relative to other | 53 * Determine how a remote surface should be stacked relative to other |
| 126 * shell surfaces. | 54 * shell surfaces. |
| 127 */ | 55 */ |
| 128 enum zwp_remote_shell_v1_container { | 56 enum zwp_remote_shell_v1_container { |
| 129 /** | |
| 130 * default container | |
| 131 */ | |
| 132 ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1, | 57 ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1, |
| 133 /** | |
| 134 * system modal container | |
| 135 */ | |
| 136 ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2, | 58 ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2, |
| 137 }; | 59 }; |
| 138 #endif /* ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM */ | 60 #endif /* ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM */ |
| 139 | 61 |
| 140 #ifndef ZWP_REMOTE_SHELL_V1_ERROR_ENUM | 62 #ifndef ZWP_REMOTE_SHELL_V1_ERROR_ENUM |
| 141 #define ZWP_REMOTE_SHELL_V1_ERROR_ENUM | 63 #define ZWP_REMOTE_SHELL_V1_ERROR_ENUM |
| 142 enum zwp_remote_shell_v1_error { | 64 enum zwp_remote_shell_v1_error { |
| 143 /** | |
| 144 * given wl_surface has another role | |
| 145 */ | |
| 146 ZWP_REMOTE_SHELL_V1_ERROR_ROLE = 0, | 65 ZWP_REMOTE_SHELL_V1_ERROR_ROLE = 0, |
| 147 }; | 66 }; |
| 148 #endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ | 67 #endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ |
| 149 | 68 |
| 150 /** | 69 /** |
| 151 * @ingroup iface_zwp_remote_shell_v1 | 70 * zwp_remote_shell_v1 - remote_shell |
| 152 * @struct zwp_remote_shell_v1_listener | 71 * @configure: suggests a re-layout of remote shell |
| 72 * @activated: activated surface changed |
| 73 * |
| 74 * The global interface that allows clients to turn a wl_surface into a |
| 75 * "real window" which is remotely managed but can be stacked, activated |
| 76 * and made fullscreen by the user. |
| 153 */ | 77 */ |
| 154 struct zwp_remote_shell_v1_listener { | 78 struct zwp_remote_shell_v1_listener { |
| 155 /** | 79 /** |
| 156 » * suggests a re-layout of remote shell | 80 » * configure - suggests a re-layout of remote shell |
| 81 » * @width: (none) |
| 82 » * @height: (none) |
| 83 » * @work_area_inset_left: (none) |
| 84 » * @work_area_inset_top: (none) |
| 85 » * @work_area_inset_right: (none) |
| 86 » * @work_area_inset_bottom: (none) |
| 157 * | 87 * |
| 158 * Suggests a re-layout of remote surface geometry. | 88 * Suggests a re-layout of remote surface geometry. |
| 89 * @since: 4 |
| 159 */ | 90 */ |
| 160 void (*configure)(void *data, | 91 void (*configure)(void *data, |
| 161 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, | 92 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, |
| 162 int32_t width, | 93 int32_t width, |
| 163 int32_t height, | 94 int32_t height, |
| 164 int32_t work_area_inset_left, | 95 int32_t work_area_inset_left, |
| 165 int32_t work_area_inset_top, | 96 int32_t work_area_inset_top, |
| 166 int32_t work_area_inset_right, | 97 int32_t work_area_inset_right, |
| 167 int32_t work_area_inset_bottom); | 98 int32_t work_area_inset_bottom); |
| 168 /** | 99 /** |
| 169 » * activated surface changed | 100 » * activated - activated surface changed |
| 101 » * @gained_active: (none) |
| 102 » * @lost_active: (none) |
| 170 * | 103 * |
| 171 * Notifies client that the activated surface changed. | 104 * Notifies client that the activated surface changed. |
| 105 * @since: 4 |
| 172 */ | 106 */ |
| 173 void (*activated)(void *data, | 107 void (*activated)(void *data, |
| 174 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, | 108 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, |
| 175 struct wl_surface *gained_active, | 109 struct wl_surface *gained_active, |
| 176 struct wl_surface *lost_active); | 110 struct wl_surface *lost_active); |
| 177 }; | 111 }; |
| 178 | 112 |
| 179 /** | |
| 180 * @ingroup zwp_remote_shell_v1_iface | |
| 181 */ | |
| 182 static inline int | 113 static inline int |
| 183 zwp_remote_shell_v1_add_listener(struct zwp_remote_shell_v1 *zwp_remote_shell_v1
, | 114 zwp_remote_shell_v1_add_listener(struct zwp_remote_shell_v1 *zwp_remote_shell_v1
, |
| 184 const struct zwp_remote_shell_v1_listener *list
ener, void *data) | 115 const struct zwp_remote_shell_v1_listener *list
ener, void *data) |
| 185 { | 116 { |
| 186 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_shell_v1, | 117 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_shell_v1, |
| 187 (void (**)(void)) listener, data); | 118 (void (**)(void)) listener, data); |
| 188 } | 119 } |
| 189 | 120 |
| 190 #define ZWP_REMOTE_SHELL_V1_DESTROY 0 | 121 #define ZWP_REMOTE_SHELL_V1_DESTROY 0 |
| 191 #define ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE 1 | 122 #define ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE 1 |
| 123 #define ZWP_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE 2 |
| 192 | 124 |
| 193 /** | |
| 194 * @ingroup iface_zwp_remote_shell_v1 | |
| 195 */ | |
| 196 #define ZWP_REMOTE_SHELL_V1_DESTROY_SINCE_VERSION 1 | |
| 197 /** | |
| 198 * @ingroup iface_zwp_remote_shell_v1 | |
| 199 */ | |
| 200 #define ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE_SINCE_VERSION 1 | |
| 201 | |
| 202 /** @ingroup iface_zwp_remote_shell_v1 */ | |
| 203 static inline void | 125 static inline void |
| 204 zwp_remote_shell_v1_set_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1, void *user_data) | 126 zwp_remote_shell_v1_set_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1, void *user_data) |
| 205 { | 127 { |
| 206 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_shell_v1, user_dat
a); | 128 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_shell_v1, user_dat
a); |
| 207 } | 129 } |
| 208 | 130 |
| 209 /** @ingroup iface_zwp_remote_shell_v1 */ | |
| 210 static inline void * | 131 static inline void * |
| 211 zwp_remote_shell_v1_get_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1) | 132 zwp_remote_shell_v1_get_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1) |
| 212 { | 133 { |
| 213 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_shell_v1); | 134 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_shell_v1); |
| 214 } | 135 } |
| 215 | 136 |
| 216 static inline uint32_t | |
| 217 zwp_remote_shell_v1_get_version(struct zwp_remote_shell_v1 *zwp_remote_shell_v1) | |
| 218 { | |
| 219 return wl_proxy_get_version((struct wl_proxy *) zwp_remote_shell_v1); | |
| 220 } | |
| 221 | |
| 222 /** | |
| 223 * @ingroup iface_zwp_remote_shell_v1 | |
| 224 * | |
| 225 * Destroy this remote_shell object. | |
| 226 * | |
| 227 * Destroying a bound remote_shell object while there are surfaces | |
| 228 * still alive created by this remote_shell object instance is illegal | |
| 229 * and will result in a protocol error. | |
| 230 */ | |
| 231 static inline void | 137 static inline void |
| 232 zwp_remote_shell_v1_destroy(struct zwp_remote_shell_v1 *zwp_remote_shell_v1) | 138 zwp_remote_shell_v1_destroy(struct zwp_remote_shell_v1 *zwp_remote_shell_v1) |
| 233 { | 139 { |
| 234 wl_proxy_marshal((struct wl_proxy *) zwp_remote_shell_v1, | 140 wl_proxy_marshal((struct wl_proxy *) zwp_remote_shell_v1, |
| 235 ZWP_REMOTE_SHELL_V1_DESTROY); | 141 ZWP_REMOTE_SHELL_V1_DESTROY); |
| 236 | 142 |
| 237 wl_proxy_destroy((struct wl_proxy *) zwp_remote_shell_v1); | 143 wl_proxy_destroy((struct wl_proxy *) zwp_remote_shell_v1); |
| 238 } | 144 } |
| 239 | 145 |
| 240 /** | |
| 241 * @ingroup iface_zwp_remote_shell_v1 | |
| 242 * | |
| 243 * This creates an remote_surface for the given surface and gives it the | |
| 244 * remote_surface role. A wl_surface can only be given a remote_surface | |
| 245 * role once. If get_remote_surface is called with a wl_surface that | |
| 246 * already has an active remote_surface associated with it, or if it had | |
| 247 * any other role, an error is raised. | |
| 248 * | |
| 249 * See the documentation of remote_surface for more details about what an | |
| 250 * remote_surface is and how it is used. | |
| 251 */ | |
| 252 static inline struct zwp_remote_surface_v1 * | 146 static inline struct zwp_remote_surface_v1 * |
| 253 zwp_remote_shell_v1_get_remote_surface(struct zwp_remote_shell_v1 *zwp_remote_sh
ell_v1, struct wl_surface *surface, uint32_t container) | 147 zwp_remote_shell_v1_get_remote_surface(struct zwp_remote_shell_v1 *zwp_remote_sh
ell_v1, struct wl_surface *surface, uint32_t container) |
| 254 { | 148 { |
| 255 struct wl_proxy *id; | 149 struct wl_proxy *id; |
| 256 | 150 |
| 257 id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_remote_shell_v
1, | 151 id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_remote_shell_v
1, |
| 258 ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE, &zwp_remote_sur
face_v1_interface, NULL, surface, container); | 152 ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE, &zwp_remote_sur
face_v1_interface, NULL, surface, container); |
| 259 | 153 |
| 260 return (struct zwp_remote_surface_v1 *) id; | 154 return (struct zwp_remote_surface_v1 *) id; |
| 261 } | 155 } |
| 262 | 156 |
| 157 static inline struct zwp_notification_surface_v1 * |
| 158 zwp_remote_shell_v1_get_notification_surface(struct zwp_remote_shell_v1 *zwp_rem
ote_shell_v1, struct wl_surface *surface, const char *notification_id) |
| 159 { |
| 160 struct wl_proxy *id; |
| 161 |
| 162 id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_remote_shell_v
1, |
| 163 ZWP_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE, &zwp_noti
fication_surface_v1_interface, NULL, surface, notification_id); |
| 164 |
| 165 return (struct zwp_notification_surface_v1 *) id; |
| 166 } |
| 167 |
| 263 /** | 168 /** |
| 264 * @ingroup iface_zwp_remote_surface_v1 | 169 * zwp_remote_surface_v1 - A desktop window |
| 265 * @struct zwp_remote_surface_v1_listener | 170 * @set_fullscreen: surface wants to be fullscreen |
| 171 * @unset_fullscreen: surface wants to be non-fullscreen |
| 172 * @close: surface wants to be closed |
| 173 * @set_maximized: surface wants to be maximized |
| 174 * @unset_maximized: surface wants to be restored |
| 175 * @set_minimized: surface wants to be minimized |
| 176 * @unset_minimized: surface wants to be restored |
| 177 * @set_pin: surface wants to be pinned |
| 178 * @unset_pin: surface wants to be unpinned |
| 179 * @set_pinned: surface was pinned |
| 180 * @unset_pinned: surface was unpinned |
| 181 * |
| 182 * An interface that may be implemented by a wl_surface, for |
| 183 * implementations that provide a desktop-style user interface and allows |
| 184 * for remotely managed windows. |
| 185 * |
| 186 * It provides requests to treat surfaces like windows, allowing to set |
| 187 * properties like app id and geometry. |
| 188 * |
| 189 * The client must call wl_surface.commit on the corresponding wl_surface |
| 190 * for the remote_surface state to take effect. |
| 191 * |
| 192 * For a surface to be mapped by the compositor the client must have |
| 193 * committed both an remote_surface state and a buffer. |
| 266 */ | 194 */ |
| 267 struct zwp_remote_surface_v1_listener { | 195 struct zwp_remote_surface_v1_listener { |
| 268 /** | 196 /** |
| 269 » * surface wants to be fullscreen | 197 » * set_fullscreen - surface wants to be fullscreen |
| 270 * | 198 * |
| 271 * The set_fullscreen event is sent by the compositor when the | 199 * The set_fullscreen event is sent by the compositor when the |
| 272 * user wants the surface to be made fullscreen. | 200 * user wants the surface to be made fullscreen. |
| 273 * | 201 * |
| 274 * This is only a request that the user intends to make your window | 202 * This is only a request that the user intends to make your window |
| 275 * fullscreen. The client may choose to ignore this request. | 203 * fullscreen. The client may choose to ignore this request. |
| 276 */ | 204 */ |
| 277 void (*set_fullscreen)(void *data, | 205 void (*set_fullscreen)(void *data, |
| 278 struct zwp_remote_surface_v1 *zwp_remote_surface_
v1); | 206 struct zwp_remote_surface_v1 *zwp_remote_surface_
v1); |
| 279 /** | 207 /** |
| 280 » * surface wants to be non-fullscreen | 208 » * unset_fullscreen - surface wants to be non-fullscreen |
| 281 * | 209 * |
| 282 * The unset_fullscreen event is sent by the compositor when the | 210 * The unset_fullscreen event is sent by the compositor when the |
| 283 * user wants the surface to be made non-fullscreen. | 211 * user wants the surface to be made non-fullscreen. |
| 284 * | 212 * |
| 285 * This is only a request that the user intends to make your window | 213 * This is only a request that the user intends to make your window |
| 286 * non-fullscreen. The client may choose to ignore this request. | 214 * non-fullscreen. The client may choose to ignore this request. |
| 287 */ | 215 */ |
| 288 void (*unset_fullscreen)(void *data, | 216 void (*unset_fullscreen)(void *data, |
| 289 struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1); | 217 struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1); |
| 290 /** | 218 /** |
| 291 » * surface wants to be closed | 219 » * close - surface wants to be closed |
| 292 * | 220 * |
| 293 * The close event is sent by the compositor when the user wants | 221 * The close event is sent by the compositor when the user wants |
| 294 * the surface to be closed. This should be equivalent to the user | 222 * the surface to be closed. This should be equivalent to the user |
| 295 * clicking the close button in client-side decorations, if your | 223 * clicking the close button in client-side decorations, if your |
| 296 * application has any... | 224 * application has any... |
| 297 * | 225 * |
| 298 * This is only a request that the user intends to close your | 226 * This is only a request that the user intends to close your |
| 299 * window. The client may choose to ignore this request, or show a | 227 * window. The client may choose to ignore this request, or show a |
| 300 * dialog to ask the user to save their data... | 228 * dialog to ask the user to save their data... |
| 301 */ | 229 */ |
| 302 void (*close)(void *data, | 230 void (*close)(void *data, |
| 303 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | 231 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); |
| 304 /** | 232 /** |
| 305 » * surface wants to be maximized | 233 » * set_maximized - surface wants to be maximized |
| 306 * | 234 * |
| 307 * The set_maximized event is sent by the compositor when the | 235 * The set_maximized event is sent by the compositor when the |
| 308 * user wants the surface to be maximized. | 236 * user wants the surface to be maximized. |
| 309 * | 237 * |
| 310 * This is only a request that the user intends to maximized the | 238 * This is only a request that the user intends to maximized the |
| 311 * window. The client may choose to ignore this request. | 239 * window. The client may choose to ignore this request. |
| 312 » * @since 2 | 240 » * @since: 2 |
| 313 */ | 241 */ |
| 314 void (*set_maximized)(void *data, | 242 void (*set_maximized)(void *data, |
| 315 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); | 243 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); |
| 316 /** | 244 /** |
| 317 » * surface wants to be restored | 245 » * unset_maximized - surface wants to be restored |
| 318 * | 246 * |
| 319 * The unset_maximized event is sent by the compositor when the | 247 * The unset_maximized event is sent by the compositor when the |
| 320 * user wants the surface to be made visible. | 248 * user wants the surface to be made visible. |
| 321 * | 249 * |
| 322 * This is only a request that the user intends to make your window | 250 * This is only a request that the user intends to make your window |
| 323 * visible. The client may choose to ignore this request. | 251 * visible. The client may choose to ignore this request. |
| 324 » * @since 2 | 252 » * @since: 2 |
| 325 */ | 253 */ |
| 326 void (*unset_maximized)(void *data, | 254 void (*unset_maximized)(void *data, |
| 327 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); | 255 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); |
| 328 /** | 256 /** |
| 329 » * surface wants to be minimized | 257 » * set_minimized - surface wants to be minimized |
| 330 * | 258 * |
| 331 * The set_minimized event is sent by the compositor when the | 259 * The set_minimized event is sent by the compositor when the |
| 332 * user wants the surface to be minimized. | 260 * user wants the surface to be minimized. |
| 333 * | 261 * |
| 334 * This is only a request that the user intends to minimize the | 262 * This is only a request that the user intends to minimize the |
| 335 * window. The client may choose to ignore this request. | 263 * window. The client may choose to ignore this request. |
| 336 » * @since 2 | 264 » * @since: 2 |
| 337 */ | 265 */ |
| 338 void (*set_minimized)(void *data, | 266 void (*set_minimized)(void *data, |
| 339 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); | 267 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); |
| 340 /** | 268 /** |
| 341 » * surface wants to be restored | 269 » * unset_minimized - surface wants to be restored |
| 342 * | 270 * |
| 343 * The unset_minimized event is sent by the compositor when the | 271 * The unset_minimized event is sent by the compositor when the |
| 344 * user wants the surface to be made visible. | 272 * user wants the surface to be made visible. |
| 345 * | 273 * |
| 346 * This is only a request that the user intends to make your window | 274 * This is only a request that the user intends to make your window |
| 347 * visible. The client may choose to ignore this request. | 275 * visible. The client may choose to ignore this request. |
| 348 » * @since 2 | 276 » * @since: 2 |
| 349 */ | 277 */ |
| 350 void (*unset_minimized)(void *data, | 278 void (*unset_minimized)(void *data, |
| 351 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); | 279 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); |
| 352 /** | 280 /** |
| 353 » * surface wants to be pinned | 281 » * set_pin - surface wants to be pinned |
| 354 * | 282 * |
| 355 * The set_pin event is sent by the compositor when the user | 283 * The set_pin event is sent by the compositor when the user |
| 356 * wants the surface to be pinned. | 284 * wants the surface to be pinned. |
| 357 * | 285 * |
| 358 * This is only a request that the user intends to make your window | 286 * This is only a request that the user intends to make your window |
| 359 * pinned. The client may choose to ignore this request. | 287 * pinned. The client may choose to ignore this request. |
| 360 » * @since 3 | 288 » * @since: 3 |
| 361 */ | 289 */ |
| 362 void (*set_pin)(void *data, | 290 void (*set_pin)(void *data, |
| 363 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | 291 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); |
| 364 /** | 292 /** |
| 365 » * surface wants to be unpinned | 293 » * unset_pin - surface wants to be unpinned |
| 366 * | 294 * |
| 367 * The unset_pin event is sent by the compositor when the user | 295 * The unset_pin event is sent by the compositor when the user |
| 368 * wants the surface to be unpinned. | 296 * wants the surface to be unpinned. |
| 369 * | 297 * |
| 370 * This is only a request that the user intends to make your window | 298 * This is only a request that the user intends to make your window |
| 371 * unpinned. The client may choose to ignore this request. | 299 * unpinned. The client may choose to ignore this request. |
| 372 » * @since 3 | 300 » * @since: 3 |
| 373 */ | 301 */ |
| 374 void (*unset_pin)(void *data, | 302 void (*unset_pin)(void *data, |
| 375 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | 303 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); |
| 376 /** | 304 /** |
| 377 » * surface was pinned | 305 » * set_pinned - surface was pinned |
| 378 * | 306 * |
| 379 * The set_pinned event is sent by the compositor when the | 307 * The set_pinned event is sent by the compositor when the |
| 380 * surface was pinned. | 308 * surface was pinned. |
| 381 * | 309 * |
| 382 * This is only an event that the pin request was successfully | 310 * This is only an event that the pin request was successfully |
| 383 * done. The client may choose to ignore this event. | 311 * done. The client may choose to ignore this event. |
| 384 » * @since 3 | 312 » * @since: 3 |
| 385 */ | 313 */ |
| 386 void (*set_pinned)(void *data, | 314 void (*set_pinned)(void *data, |
| 387 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | 315 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); |
| 388 /** | 316 /** |
| 389 » * surface was unpinned | 317 » * unset_pinned - surface was unpinned |
| 390 * | 318 * |
| 391 * The unset_pinned event is sent by the compositor when the | 319 * The unset_pinned event is sent by the compositor when the |
| 392 * surface was unpinned. | 320 * surface was unpinned. |
| 393 * | 321 * |
| 394 * This is only an event that the unpin request was successfully | 322 * This is only an event that the unpin request was successfully |
| 395 * done. The client may choose to ignore this event. | 323 * done. The client may choose to ignore this event. |
| 396 » * @since 3 | 324 » * @since: 3 |
| 397 */ | 325 */ |
| 398 void (*unset_pinned)(void *data, | 326 void (*unset_pinned)(void *data, |
| 399 struct zwp_remote_surface_v1 *zwp_remote_surface_v1
); | 327 struct zwp_remote_surface_v1 *zwp_remote_surface_v1
); |
| 400 }; | 328 }; |
| 401 | 329 |
| 402 /** | |
| 403 * @ingroup zwp_remote_surface_v1_iface | |
| 404 */ | |
| 405 static inline int | 330 static inline int |
| 406 zwp_remote_surface_v1_add_listener(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1, | 331 zwp_remote_surface_v1_add_listener(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1, |
| 407 const struct zwp_remote_surface_v1_listener *
listener, void *data) | 332 const struct zwp_remote_surface_v1_listener *
listener, void *data) |
| 408 { | 333 { |
| 409 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_surface_v1, | 334 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_surface_v1, |
| 410 (void (**)(void)) listener, data); | 335 (void (**)(void)) listener, data); |
| 411 } | 336 } |
| 412 | 337 |
| 413 #define ZWP_REMOTE_SURFACE_V1_DESTROY 0 | 338 #define ZWP_REMOTE_SURFACE_V1_DESTROY 0 |
| 414 #define ZWP_REMOTE_SURFACE_V1_SET_APP_ID 1 | 339 #define ZWP_REMOTE_SURFACE_V1_SET_APP_ID 1 |
| 415 #define ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY 2 | 340 #define ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY 2 |
| 416 #define ZWP_REMOTE_SURFACE_V1_SET_SCALE 3 | 341 #define ZWP_REMOTE_SURFACE_V1_SET_SCALE 3 |
| 417 #define ZWP_REMOTE_SURFACE_V1_FULLSCREEN 4 | 342 #define ZWP_REMOTE_SURFACE_V1_FULLSCREEN 4 |
| 418 #define ZWP_REMOTE_SURFACE_V1_MAXIMIZE 5 | 343 #define ZWP_REMOTE_SURFACE_V1_MAXIMIZE 5 |
| 419 #define ZWP_REMOTE_SURFACE_V1_MINIMIZE 6 | 344 #define ZWP_REMOTE_SURFACE_V1_MINIMIZE 6 |
| 420 #define ZWP_REMOTE_SURFACE_V1_RESTORE 7 | 345 #define ZWP_REMOTE_SURFACE_V1_RESTORE 7 |
| 421 #define ZWP_REMOTE_SURFACE_V1_PIN 8 | 346 #define ZWP_REMOTE_SURFACE_V1_PIN 8 |
| 422 #define ZWP_REMOTE_SURFACE_V1_UNPIN 9 | 347 #define ZWP_REMOTE_SURFACE_V1_UNPIN 9 |
| 423 #define ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN 10 | 348 #define ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN 10 |
| 424 | 349 |
| 425 /** | |
| 426 * @ingroup iface_zwp_remote_surface_v1 | |
| 427 */ | |
| 428 #define ZWP_REMOTE_SURFACE_V1_DESTROY_SINCE_VERSION 1 | |
| 429 /** | |
| 430 * @ingroup iface_zwp_remote_surface_v1 | |
| 431 */ | |
| 432 #define ZWP_REMOTE_SURFACE_V1_SET_APP_ID_SINCE_VERSION 1 | |
| 433 /** | |
| 434 * @ingroup iface_zwp_remote_surface_v1 | |
| 435 */ | |
| 436 #define ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY_SINCE_VERSION 1 | |
| 437 /** | |
| 438 * @ingroup iface_zwp_remote_surface_v1 | |
| 439 */ | |
| 440 #define ZWP_REMOTE_SURFACE_V1_SET_SCALE_SINCE_VERSION 1 | |
| 441 /** | |
| 442 * @ingroup iface_zwp_remote_surface_v1 | |
| 443 */ | |
| 444 #define ZWP_REMOTE_SURFACE_V1_FULLSCREEN_SINCE_VERSION 2 | |
| 445 /** | |
| 446 * @ingroup iface_zwp_remote_surface_v1 | |
| 447 */ | |
| 448 #define ZWP_REMOTE_SURFACE_V1_MAXIMIZE_SINCE_VERSION 2 | |
| 449 /** | |
| 450 * @ingroup iface_zwp_remote_surface_v1 | |
| 451 */ | |
| 452 #define ZWP_REMOTE_SURFACE_V1_MINIMIZE_SINCE_VERSION 2 | |
| 453 /** | |
| 454 * @ingroup iface_zwp_remote_surface_v1 | |
| 455 */ | |
| 456 #define ZWP_REMOTE_SURFACE_V1_RESTORE_SINCE_VERSION 2 | |
| 457 /** | |
| 458 * @ingroup iface_zwp_remote_surface_v1 | |
| 459 */ | |
| 460 #define ZWP_REMOTE_SURFACE_V1_PIN_SINCE_VERSION 3 | |
| 461 /** | |
| 462 * @ingroup iface_zwp_remote_surface_v1 | |
| 463 */ | |
| 464 #define ZWP_REMOTE_SURFACE_V1_UNPIN_SINCE_VERSION 3 | |
| 465 /** | |
| 466 * @ingroup iface_zwp_remote_surface_v1 | |
| 467 */ | |
| 468 #define ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN_SINCE_VERSION 3 | |
| 469 | |
| 470 /** @ingroup iface_zwp_remote_surface_v1 */ | |
| 471 static inline void | 350 static inline void |
| 472 zwp_remote_surface_v1_set_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1, void *user_data) | 351 zwp_remote_surface_v1_set_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1, void *user_data) |
| 473 { | 352 { |
| 474 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_surface_v1, user_d
ata); | 353 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_surface_v1, user_d
ata); |
| 475 } | 354 } |
| 476 | 355 |
| 477 /** @ingroup iface_zwp_remote_surface_v1 */ | |
| 478 static inline void * | 356 static inline void * |
| 479 zwp_remote_surface_v1_get_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1) | 357 zwp_remote_surface_v1_get_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1) |
| 480 { | 358 { |
| 481 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_surface_v1)
; | 359 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_surface_v1)
; |
| 482 } | 360 } |
| 483 | 361 |
| 484 static inline uint32_t | |
| 485 zwp_remote_surface_v1_get_version(struct zwp_remote_surface_v1 *zwp_remote_surfa
ce_v1) | |
| 486 { | |
| 487 return wl_proxy_get_version((struct wl_proxy *) zwp_remote_surface_v1); | |
| 488 } | |
| 489 | |
| 490 /** | |
| 491 * @ingroup iface_zwp_remote_surface_v1 | |
| 492 * | |
| 493 * Unmap and destroy the window. The window will be effectively | |
| 494 * hidden from the user's point of view, and all state will be lost. | |
| 495 */ | |
| 496 static inline void | 362 static inline void |
| 497 zwp_remote_surface_v1_destroy(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) | 363 zwp_remote_surface_v1_destroy(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) |
| 498 { | 364 { |
| 499 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 365 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 500 ZWP_REMOTE_SURFACE_V1_DESTROY); | 366 ZWP_REMOTE_SURFACE_V1_DESTROY); |
| 501 | 367 |
| 502 wl_proxy_destroy((struct wl_proxy *) zwp_remote_surface_v1); | 368 wl_proxy_destroy((struct wl_proxy *) zwp_remote_surface_v1); |
| 503 } | 369 } |
| 504 | 370 |
| 505 /** | |
| 506 * @ingroup iface_zwp_remote_surface_v1 | |
| 507 * | |
| 508 * Set an application identifier for the surface. | |
| 509 */ | |
| 510 static inline void | 371 static inline void |
| 511 zwp_remote_surface_v1_set_app_id(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1, const char *app_id) | 372 zwp_remote_surface_v1_set_app_id(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1, const char *app_id) |
| 512 { | 373 { |
| 513 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 374 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 514 ZWP_REMOTE_SURFACE_V1_SET_APP_ID, app_id); | 375 ZWP_REMOTE_SURFACE_V1_SET_APP_ID, app_id); |
| 515 } | 376 } |
| 516 | 377 |
| 517 /** | |
| 518 * @ingroup iface_zwp_remote_surface_v1 | |
| 519 * | |
| 520 * The window geometry of a window is its "visible bounds" from the | |
| 521 * user's perspective. Client-side decorations often have invisible | |
| 522 * portions like drop-shadows which should be ignored for the | |
| 523 * purposes of aligning, placing and constraining windows. | |
| 524 * | |
| 525 * The window geometry is double buffered, and will be applied at the | |
| 526 * time wl_surface.commit of the corresponding wl_surface is called. | |
| 527 * | |
| 528 * Once the window geometry of the surface is set once, it is not | |
| 529 * possible to unset it, and it will remain the same until | |
| 530 * set_window_geometry is called again, even if a new subsurface or | |
| 531 * buffer is attached. | |
| 532 * | |
| 533 * If never set, the value is the full bounds of the output. This | |
| 534 * updates dynamically on every commit. | |
| 535 * | |
| 536 * The arguments are given in the output coordinate space. | |
| 537 * | |
| 538 * The width and height must be greater than zero. | |
| 539 */ | |
| 540 static inline void | 378 static inline void |
| 541 zwp_remote_surface_v1_set_window_geometry(struct zwp_remote_surface_v1 *zwp_remo
te_surface_v1, int32_t x, int32_t y, int32_t width, int32_t height) | 379 zwp_remote_surface_v1_set_window_geometry(struct zwp_remote_surface_v1 *zwp_remo
te_surface_v1, int32_t x, int32_t y, int32_t width, int32_t height) |
| 542 { | 380 { |
| 543 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 381 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 544 ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY, x, y, width,
height); | 382 ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY, x, y, width,
height); |
| 545 } | 383 } |
| 546 | 384 |
| 547 /** | |
| 548 * @ingroup iface_zwp_remote_surface_v1 | |
| 549 * | |
| 550 * Set a scale factor that will be applied to surface and all descendants. | |
| 551 */ | |
| 552 static inline void | 385 static inline void |
| 553 zwp_remote_surface_v1_set_scale(struct zwp_remote_surface_v1 *zwp_remote_surface
_v1, wl_fixed_t scale) | 386 zwp_remote_surface_v1_set_scale(struct zwp_remote_surface_v1 *zwp_remote_surface
_v1, wl_fixed_t scale) |
| 554 { | 387 { |
| 555 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 388 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 556 ZWP_REMOTE_SURFACE_V1_SET_SCALE, scale); | 389 ZWP_REMOTE_SURFACE_V1_SET_SCALE, scale); |
| 557 } | 390 } |
| 558 | 391 |
| 559 /** | |
| 560 * @ingroup iface_zwp_remote_surface_v1 | |
| 561 * | |
| 562 * Request that surface is made fullscreen. | |
| 563 * | |
| 564 * This is only a request that the window should be made fullscreen. | |
| 565 * The compositor may choose to ignore this request. The client should | |
| 566 * listen to set_fullscreen events to determine if the window was | |
| 567 * made fullscreen or not. | |
| 568 */ | |
| 569 static inline void | 392 static inline void |
| 570 zwp_remote_surface_v1_fullscreen(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1) | 393 zwp_remote_surface_v1_fullscreen(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1) |
| 571 { | 394 { |
| 572 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 395 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 573 ZWP_REMOTE_SURFACE_V1_FULLSCREEN); | 396 ZWP_REMOTE_SURFACE_V1_FULLSCREEN); |
| 574 } | 397 } |
| 575 | 398 |
| 576 /** | |
| 577 * @ingroup iface_zwp_remote_surface_v1 | |
| 578 * | |
| 579 * Request that surface is maximized. The window geometry will be updated | |
| 580 * to whatever the compositor finds appropriate for a maximized window. | |
| 581 * | |
| 582 * This is only a request that the window should be maximized. The | |
| 583 * compositor may choose to ignore this request. The client should | |
| 584 * listen to set_maximized events to determine if the window was | |
| 585 * maximized or not. | |
| 586 */ | |
| 587 static inline void | 399 static inline void |
| 588 zwp_remote_surface_v1_maximize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) | 400 zwp_remote_surface_v1_maximize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) |
| 589 { | 401 { |
| 590 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 402 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 591 ZWP_REMOTE_SURFACE_V1_MAXIMIZE); | 403 ZWP_REMOTE_SURFACE_V1_MAXIMIZE); |
| 592 } | 404 } |
| 593 | 405 |
| 594 /** | |
| 595 * @ingroup iface_zwp_remote_surface_v1 | |
| 596 * | |
| 597 * Request that surface is minimized. | |
| 598 * | |
| 599 * This is only a request that the window should be minimized. The | |
| 600 * compositor may choose to ignore this request. The client should | |
| 601 * listen to set_minimized events to determine if the window was | |
| 602 * minimized or not. | |
| 603 */ | |
| 604 static inline void | 406 static inline void |
| 605 zwp_remote_surface_v1_minimize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) | 407 zwp_remote_surface_v1_minimize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) |
| 606 { | 408 { |
| 607 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 409 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 608 ZWP_REMOTE_SURFACE_V1_MINIMIZE); | 410 ZWP_REMOTE_SURFACE_V1_MINIMIZE); |
| 609 } | 411 } |
| 610 | 412 |
| 611 /** | |
| 612 * @ingroup iface_zwp_remote_surface_v1 | |
| 613 * | |
| 614 * Request that surface is restored. This restores the window geometry | |
| 615 * to what it was before the window was minimized, maximized or made | |
| 616 * fullscreen. | |
| 617 * | |
| 618 * This is only a request that the window should be restored. The | |
| 619 * compositor may choose to ignore this request. The client should | |
| 620 * listen to unset_maximized, unset_minimize and unset_fullscreen | |
| 621 * events to determine if the window was restored or not. | |
| 622 */ | |
| 623 static inline void | 413 static inline void |
| 624 zwp_remote_surface_v1_restore(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) | 414 zwp_remote_surface_v1_restore(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) |
| 625 { | 415 { |
| 626 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 416 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 627 ZWP_REMOTE_SURFACE_V1_RESTORE); | 417 ZWP_REMOTE_SURFACE_V1_RESTORE); |
| 628 } | 418 } |
| 629 | 419 |
| 630 /** | |
| 631 * @ingroup iface_zwp_remote_surface_v1 | |
| 632 * | |
| 633 * Request that surface is pinned. | |
| 634 * | |
| 635 * This is only a request that the window should be pinned. | |
| 636 * The compositor may choose to ignore this request. The client should | |
| 637 * listen to set_pinned events to determine if the window was | |
| 638 * pinned or not. | |
| 639 */ | |
| 640 static inline void | 420 static inline void |
| 641 zwp_remote_surface_v1_pin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) | 421 zwp_remote_surface_v1_pin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) |
| 642 { | 422 { |
| 643 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 423 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 644 ZWP_REMOTE_SURFACE_V1_PIN); | 424 ZWP_REMOTE_SURFACE_V1_PIN); |
| 645 } | 425 } |
| 646 | 426 |
| 647 /** | |
| 648 * @ingroup iface_zwp_remote_surface_v1 | |
| 649 * | |
| 650 * Request that surface is unpinned. | |
| 651 * | |
| 652 * This is only a request that the window should be unpinned. | |
| 653 * The compositor may choose to ignore this request. The client should | |
| 654 * listen to unset_pinned events to determine if the window was | |
| 655 * unpinned or not. | |
| 656 */ | |
| 657 static inline void | 427 static inline void |
| 658 zwp_remote_surface_v1_unpin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) | 428 zwp_remote_surface_v1_unpin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) |
| 659 { | 429 { |
| 660 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 430 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 661 ZWP_REMOTE_SURFACE_V1_UNPIN); | 431 ZWP_REMOTE_SURFACE_V1_UNPIN); |
| 662 } | 432 } |
| 663 | 433 |
| 664 /** | |
| 665 * @ingroup iface_zwp_remote_surface_v1 | |
| 666 * | |
| 667 * Request that surface is made unfullscreen. | |
| 668 * | |
| 669 * This is only a request that the window should be made unfullscreen. | |
| 670 * The compositor may choose to ignore this request. The client should | |
| 671 * listen to unset_fullscreen events to determine if the window was | |
| 672 * made unfullscreen or not. | |
| 673 */ | |
| 674 static inline void | 434 static inline void |
| 675 zwp_remote_surface_v1_unfullscreen(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1) | 435 zwp_remote_surface_v1_unfullscreen(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1) |
| 676 { | 436 { |
| 677 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | 437 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, |
| 678 ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN); | 438 ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN); |
| 679 } | 439 } |
| 680 | 440 |
| 441 #define ZWP_NOTIFICATION_SURFACE_V1_DESTROY 0 |
| 442 |
| 443 static inline void |
| 444 zwp_notification_surface_v1_set_user_data(struct zwp_notification_surface_v1 *zw
p_notification_surface_v1, void *user_data) |
| 445 { |
| 446 wl_proxy_set_user_data((struct wl_proxy *) zwp_notification_surface_v1,
user_data); |
| 447 } |
| 448 |
| 449 static inline void * |
| 450 zwp_notification_surface_v1_get_user_data(struct zwp_notification_surface_v1 *zw
p_notification_surface_v1) |
| 451 { |
| 452 return wl_proxy_get_user_data((struct wl_proxy *) zwp_notification_surfa
ce_v1); |
| 453 } |
| 454 |
| 455 static inline void |
| 456 zwp_notification_surface_v1_destroy(struct zwp_notification_surface_v1 *zwp_noti
fication_surface_v1) |
| 457 { |
| 458 wl_proxy_marshal((struct wl_proxy *) zwp_notification_surface_v1, |
| 459 ZWP_NOTIFICATION_SURFACE_V1_DESTROY); |
| 460 |
| 461 wl_proxy_destroy((struct wl_proxy *) zwp_notification_surface_v1); |
| 462 } |
| 463 |
| 681 #ifdef __cplusplus | 464 #ifdef __cplusplus |
| 682 } | 465 } |
| 683 #endif | 466 #endif |
| 684 | 467 |
| 685 #endif | 468 #endif |
| OLD | NEW |