| OLD | NEW |
| 1 /* Generated by wayland-scanner 1.11.0 */ | 1 /* |
| 2 | |
| 3 #ifndef REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H | |
| 4 #define REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H | |
| 5 | |
| 6 #include <stdint.h> | |
| 7 #include <stddef.h> | |
| 8 #include "wayland-server.h" | |
| 9 | |
| 10 #ifdef __cplusplus | |
| 11 extern "C" { | |
| 12 #endif | |
| 13 | |
| 14 struct wl_client; | |
| 15 struct wl_resource; | |
| 16 | |
| 17 /** | |
| 18 * @page page_remote_shell_unstable_v1 The remote_shell_unstable_v1 protocol | |
| 19 * Create remote desktop-style surfaces | |
| 20 * | |
| 21 * @section page_desc_remote_shell_unstable_v1 Description | |
| 22 * | |
| 23 * remote_shell allows clients to turn a wl_surface into a "real window" | |
| 24 * which can be stacked and activated by the user. | |
| 25 * | |
| 26 * Warning! The protocol described in this file is experimental and backward | |
| 27 * incompatible changes may be made. Backward compatible changes may be added | |
| 28 * together with the corresponding interface version bump. Backward | |
| 29 * incompatible changes are done by bumping the version number in the protocol | |
| 30 * and interface names and resetting the interface version. Once the protocol | |
| 31 * is to be declared stable, the 'z' prefix and the version number in the | |
| 32 * protocol and interface names are removed and the interface version number is | |
| 33 * reset. | |
| 34 * | |
| 35 * @section page_ifaces_remote_shell_unstable_v1 Interfaces | |
| 36 * - @subpage page_iface_zwp_remote_shell_v1 - remote_shell | |
| 37 * - @subpage page_iface_zwp_remote_surface_v1 - A desktop window | |
| 38 * @section page_copyright_remote_shell_unstable_v1 Copyright | |
| 39 * <pre> | |
| 40 * | |
| 41 * Copyright 2016 The Chromium Authors. | 2 * Copyright 2016 The Chromium Authors. |
| 42 * | 3 * |
| 43 * 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 |
| 44 * copy of this software and associated documentation files (the "Software"), | 5 * copy of this software and associated documentation files (the "Software"), |
| 45 * to deal in the Software without restriction, including without limitation | 6 * to deal in the Software without restriction, including without limitation |
| 46 * the rights to use, copy, modify, merge, publish, distribute, sublicense, | 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| 47 * 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 |
| 48 * Software is furnished to do so, subject to the following conditions: | 9 * Software is furnished to do so, subject to the following conditions: |
| 49 * | 10 * |
| 50 * The above copyright notice and this permission notice (including the next | 11 * The above copyright notice and this permission notice (including the next |
| 51 * 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 |
| 52 * Software. | 13 * Software. |
| 53 * | 14 * |
| 54 * 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 |
| 55 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 56 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | 17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| 57 * 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 |
| 58 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | 19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| 59 * 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 |
| 60 * DEALINGS IN THE SOFTWARE. | 21 * DEALINGS IN THE SOFTWARE. |
| 61 * </pre> | |
| 62 */ | 22 */ |
| 63 struct wl_surface; | 23 |
| 24 #ifndef REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H |
| 25 #define REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H |
| 26 |
| 27 #ifdef __cplusplus |
| 28 extern "C" { |
| 29 #endif |
| 30 |
| 31 #include <stdint.h> |
| 32 #include <stddef.h> |
| 33 #include "wayland-util.h" |
| 34 |
| 35 struct wl_client; |
| 36 struct wl_resource; |
| 37 |
| 64 struct zwp_remote_shell_v1; | 38 struct zwp_remote_shell_v1; |
| 65 struct zwp_remote_surface_v1; | 39 struct zwp_remote_surface_v1; |
| 40 struct zwp_notification_surface_v1; |
| 66 | 41 |
| 67 /** | |
| 68 * @page page_iface_zwp_remote_shell_v1 zwp_remote_shell_v1 | |
| 69 * @section page_iface_zwp_remote_shell_v1_desc Description | |
| 70 * | |
| 71 * The global interface that allows clients to turn a wl_surface into a | |
| 72 * "real window" which is remotely managed but can be stacked, activated | |
| 73 * and made fullscreen by the user. | |
| 74 * @section page_iface_zwp_remote_shell_v1_api API | |
| 75 * See @ref iface_zwp_remote_shell_v1. | |
| 76 */ | |
| 77 /** | |
| 78 * @defgroup iface_zwp_remote_shell_v1 The zwp_remote_shell_v1 interface | |
| 79 * | |
| 80 * The global interface that allows clients to turn a wl_surface into a | |
| 81 * "real window" which is remotely managed but can be stacked, activated | |
| 82 * and made fullscreen by the user. | |
| 83 */ | |
| 84 extern const struct wl_interface zwp_remote_shell_v1_interface; | 42 extern const struct wl_interface zwp_remote_shell_v1_interface; |
| 85 /** | |
| 86 * @page page_iface_zwp_remote_surface_v1 zwp_remote_surface_v1 | |
| 87 * @section page_iface_zwp_remote_surface_v1_desc Description | |
| 88 * | |
| 89 * An interface that may be implemented by a wl_surface, for | |
| 90 * implementations that provide a desktop-style user interface | |
| 91 * and allows for remotely managed windows. | |
| 92 * | |
| 93 * It provides requests to treat surfaces like windows, allowing to set | |
| 94 * properties like app id and geometry. | |
| 95 * | |
| 96 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 97 * for the remote_surface state to take effect. | |
| 98 * | |
| 99 * For a surface to be mapped by the compositor the client must have | |
| 100 * committed both an remote_surface state and a buffer. | |
| 101 * @section page_iface_zwp_remote_surface_v1_api API | |
| 102 * See @ref iface_zwp_remote_surface_v1. | |
| 103 */ | |
| 104 /** | |
| 105 * @defgroup iface_zwp_remote_surface_v1 The zwp_remote_surface_v1 interface | |
| 106 * | |
| 107 * An interface that may be implemented by a wl_surface, for | |
| 108 * implementations that provide a desktop-style user interface | |
| 109 * and allows for remotely managed windows. | |
| 110 * | |
| 111 * It provides requests to treat surfaces like windows, allowing to set | |
| 112 * properties like app id and geometry. | |
| 113 * | |
| 114 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 115 * for the remote_surface state to take effect. | |
| 116 * | |
| 117 * For a surface to be mapped by the compositor the client must have | |
| 118 * committed both an remote_surface state and a buffer. | |
| 119 */ | |
| 120 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; |
| 121 | 45 |
| 122 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | 46 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 123 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | 47 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 124 /** | 48 /** |
| 125 * @ingroup iface_zwp_remote_shell_v1 | 49 * zwp_remote_shell_v1_container - containers for remote surfaces |
| 126 * containers for remote surfaces | 50 * @ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT: default container |
| 51 * @ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY: system modal container |
| 127 * | 52 * |
| 128 * Determine how a remote surface should be stacked relative to other | 53 * Determine how a remote surface should be stacked relative to other |
| 129 * shell surfaces. | 54 * shell surfaces. |
| 130 */ | 55 */ |
| 131 enum zwp_remote_shell_v1_container { | 56 enum zwp_remote_shell_v1_container { |
| 132 /** | |
| 133 * default container | |
| 134 */ | |
| 135 ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1, | 57 ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1, |
| 136 /** | |
| 137 * system modal container | |
| 138 */ | |
| 139 ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2, | 58 ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2, |
| 140 }; | 59 }; |
| 141 #endif /* ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM */ | 60 #endif /* ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM */ |
| 142 | 61 |
| 143 #ifndef ZWP_REMOTE_SHELL_V1_ERROR_ENUM | 62 #ifndef ZWP_REMOTE_SHELL_V1_ERROR_ENUM |
| 144 #define ZWP_REMOTE_SHELL_V1_ERROR_ENUM | 63 #define ZWP_REMOTE_SHELL_V1_ERROR_ENUM |
| 145 enum zwp_remote_shell_v1_error { | 64 enum zwp_remote_shell_v1_error { |
| 146 /** | |
| 147 * given wl_surface has another role | |
| 148 */ | |
| 149 ZWP_REMOTE_SHELL_V1_ERROR_ROLE = 0, | 65 ZWP_REMOTE_SHELL_V1_ERROR_ROLE = 0, |
| 150 }; | 66 }; |
| 151 #endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ | 67 #endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ |
| 152 | 68 |
| 153 /** | 69 /** |
| 154 * @ingroup iface_zwp_remote_shell_v1 | 70 * zwp_remote_shell_v1 - remote_shell |
| 155 * @struct zwp_remote_shell_v1_interface | 71 * @destroy: destroy remote_shell |
| 72 * @get_remote_surface: create a remote shell surface from a surface |
| 73 * @get_notification_surface: create a notification surface from a |
| 74 *» surface |
| 75 * |
| 76 * The global interface that allows clients to turn a wl_surface into a |
| 77 * "real window" which is remotely managed but can be stacked, activated |
| 78 * and made fullscreen by the user. |
| 156 */ | 79 */ |
| 157 struct zwp_remote_shell_v1_interface { | 80 struct zwp_remote_shell_v1_interface { |
| 158 /** | 81 /** |
| 159 » * destroy remote_shell | 82 » * destroy - destroy remote_shell |
| 160 * | 83 * |
| 161 * Destroy this remote_shell object. | 84 * Destroy this remote_shell object. |
| 162 * | 85 * |
| 163 * Destroying a bound remote_shell object while there are surfaces | 86 * Destroying a bound remote_shell object while there are surfaces |
| 164 * still alive created by this remote_shell object instance is | 87 * still alive created by this remote_shell object instance is |
| 165 * illegal and will result in a protocol error. | 88 * illegal and will result in a protocol error. |
| 166 */ | 89 */ |
| 167 void (*destroy)(struct wl_client *client, | 90 void (*destroy)(struct wl_client *client, |
| 168 struct wl_resource *resource); | 91 struct wl_resource *resource); |
| 169 /** | 92 /** |
| 170 » * create a remote shell surface from a surface | 93 » * get_remote_surface - create a remote shell surface from a |
| 94 » *» surface |
| 95 » * @id: (none) |
| 96 » * @surface: (none) |
| 97 » * @container: (none) |
| 171 * | 98 * |
| 172 * This creates an remote_surface for the given surface and gives | 99 * This creates an remote_surface for the given surface and gives |
| 173 * it the remote_surface role. A wl_surface can only be given a | 100 * it the remote_surface role. A wl_surface can only be given a |
| 174 * remote_surface role once. If get_remote_surface is called with a | 101 * remote_surface role once. If get_remote_surface is called with a |
| 175 * wl_surface that already has an active remote_surface associated | 102 * wl_surface that already has an active remote_surface associated |
| 176 * with it, or if it had any other role, an error is raised. | 103 * with it, or if it had any other role, an error is raised. |
| 177 * | 104 * |
| 178 * See the documentation of remote_surface for more details about | 105 * See the documentation of remote_surface for more details about |
| 179 * what an remote_surface is and how it is used. | 106 * what an remote_surface is and how it is used. |
| 180 */ | 107 */ |
| 181 void (*get_remote_surface)(struct wl_client *client, | 108 void (*get_remote_surface)(struct wl_client *client, |
| 182 struct wl_resource *resource, | 109 struct wl_resource *resource, |
| 183 uint32_t id, | 110 uint32_t id, |
| 184 struct wl_resource *surface, | 111 struct wl_resource *surface, |
| 185 uint32_t container); | 112 uint32_t container); |
| 113 /** |
| 114 * get_notification_surface - create a notification surface from |
| 115 * a surface |
| 116 * @id: (none) |
| 117 * @surface: (none) |
| 118 * @notification_id: (none) |
| 119 * |
| 120 * Creates a notification_surface for the given surface, gives it |
| 121 * the notification_surface role and associated it with a |
| 122 * notification id. |
| 123 * @since: 4 |
| 124 */ |
| 125 void (*get_notification_surface)(struct wl_client *client, |
| 126 struct wl_resource *resource, |
| 127 uint32_t id, |
| 128 struct wl_resource *surface, |
| 129 const char *notification_id); |
| 186 }; | 130 }; |
| 187 | 131 |
| 188 #define ZWP_REMOTE_SHELL_V1_CONFIGURE 0 | 132 #define ZWP_REMOTE_SHELL_V1_CONFIGURE 0 |
| 189 #define ZWP_REMOTE_SHELL_V1_ACTIVATED 1 | 133 #define ZWP_REMOTE_SHELL_V1_ACTIVATED 1 |
| 190 | 134 |
| 191 /** | |
| 192 * @ingroup iface_zwp_remote_shell_v1 | |
| 193 */ | |
| 194 #define ZWP_REMOTE_SHELL_V1_CONFIGURE_SINCE_VERSION 1 | |
| 195 /** | |
| 196 * @ingroup iface_zwp_remote_shell_v1 | |
| 197 */ | |
| 198 #define ZWP_REMOTE_SHELL_V1_ACTIVATED_SINCE_VERSION 1 | |
| 199 | |
| 200 /** | |
| 201 * @ingroup iface_zwp_remote_shell_v1 | |
| 202 * Sends an configure event to the client owning the resource. | |
| 203 * @param resource_ The client's resource | |
| 204 */ | |
| 205 static inline void | 135 static inline void |
| 206 zwp_remote_shell_v1_send_configure(struct wl_resource *resource_, int32_t width,
int32_t height, int32_t work_area_inset_left, int32_t work_area_inset_top, int3
2_t work_area_inset_right, int32_t work_area_inset_bottom) | 136 zwp_remote_shell_v1_send_configure(struct wl_resource *resource_, int32_t width,
int32_t height, int32_t work_area_inset_left, int32_t work_area_inset_top, int3
2_t work_area_inset_right, int32_t work_area_inset_bottom) |
| 207 { | 137 { |
| 208 wl_resource_post_event(resource_, ZWP_REMOTE_SHELL_V1_CONFIGURE, width,
height, work_area_inset_left, work_area_inset_top, work_area_inset_right, work_a
rea_inset_bottom); | 138 wl_resource_post_event(resource_, ZWP_REMOTE_SHELL_V1_CONFIGURE, width,
height, work_area_inset_left, work_area_inset_top, work_area_inset_right, work_a
rea_inset_bottom); |
| 209 } | 139 } |
| 210 | 140 |
| 211 /** | |
| 212 * @ingroup iface_zwp_remote_shell_v1 | |
| 213 * Sends an activated event to the client owning the resource. | |
| 214 * @param resource_ The client's resource | |
| 215 */ | |
| 216 static inline void | 141 static inline void |
| 217 zwp_remote_shell_v1_send_activated(struct wl_resource *resource_, struct wl_reso
urce *gained_active, struct wl_resource *lost_active) | 142 zwp_remote_shell_v1_send_activated(struct wl_resource *resource_, struct wl_reso
urce *gained_active, struct wl_resource *lost_active) |
| 218 { | 143 { |
| 219 wl_resource_post_event(resource_, ZWP_REMOTE_SHELL_V1_ACTIVATED, gained_
active, lost_active); | 144 wl_resource_post_event(resource_, ZWP_REMOTE_SHELL_V1_ACTIVATED, gained_
active, lost_active); |
| 220 } | 145 } |
| 221 | 146 |
| 222 /** | 147 /** |
| 223 * @ingroup iface_zwp_remote_surface_v1 | 148 * zwp_remote_surface_v1 - A desktop window |
| 224 * @struct zwp_remote_surface_v1_interface | 149 * @destroy: Destroy the remote_surface |
| 150 * @set_app_id: set application ID |
| 151 * @set_window_geometry: set the new window geometry |
| 152 * @set_scale: set scale |
| 153 * @fullscreen: fullscreen |
| 154 * @maximize: maximize |
| 155 * @minimize: minimize |
| 156 * @restore: restore |
| 157 * @pin: pin |
| 158 * @unpin: unpin |
| 159 * @unfullscreen: unfullscreen |
| 160 * |
| 161 * An interface that may be implemented by a wl_surface, for |
| 162 * implementations that provide a desktop-style user interface and allows |
| 163 * for remotely managed windows. |
| 164 * |
| 165 * It provides requests to treat surfaces like windows, allowing to set |
| 166 * properties like app id and geometry. |
| 167 * |
| 168 * The client must call wl_surface.commit on the corresponding wl_surface |
| 169 * for the remote_surface state to take effect. |
| 170 * |
| 171 * For a surface to be mapped by the compositor the client must have |
| 172 * committed both an remote_surface state and a buffer. |
| 225 */ | 173 */ |
| 226 struct zwp_remote_surface_v1_interface { | 174 struct zwp_remote_surface_v1_interface { |
| 227 /** | 175 /** |
| 228 » * Destroy the remote_surface | 176 » * destroy - Destroy the remote_surface |
| 229 * | 177 * |
| 230 * Unmap and destroy the window. The window will be effectively | 178 * Unmap and destroy the window. The window will be effectively |
| 231 * hidden from the user's point of view, and all state will be | 179 * hidden from the user's point of view, and all state will be |
| 232 * lost. | 180 * lost. |
| 233 */ | 181 */ |
| 234 void (*destroy)(struct wl_client *client, | 182 void (*destroy)(struct wl_client *client, |
| 235 struct wl_resource *resource); | 183 struct wl_resource *resource); |
| 236 /** | 184 /** |
| 237 » * set application ID | 185 » * set_app_id - set application ID |
| 186 » * @app_id: (none) |
| 238 * | 187 * |
| 239 * Set an application identifier for the surface. | 188 * Set an application identifier for the surface. |
| 240 */ | 189 */ |
| 241 void (*set_app_id)(struct wl_client *client, | 190 void (*set_app_id)(struct wl_client *client, |
| 242 struct wl_resource *resource, | 191 struct wl_resource *resource, |
| 243 const char *app_id); | 192 const char *app_id); |
| 244 /** | 193 /** |
| 245 » * set the new window geometry | 194 » * set_window_geometry - set the new window geometry |
| 195 » * @x: (none) |
| 196 » * @y: (none) |
| 197 » * @width: (none) |
| 198 » * @height: (none) |
| 246 * | 199 * |
| 247 * The window geometry of a window is its "visible bounds" from | 200 * The window geometry of a window is its "visible bounds" from |
| 248 * the user's perspective. Client-side decorations often have | 201 * the user's perspective. Client-side decorations often have |
| 249 * invisible portions like drop-shadows which should be ignored for | 202 * invisible portions like drop-shadows which should be ignored for |
| 250 * the purposes of aligning, placing and constraining windows. | 203 * the purposes of aligning, placing and constraining windows. |
| 251 * | 204 * |
| 252 * The window geometry is double buffered, and will be applied at | 205 * The window geometry is double buffered, and will be applied at |
| 253 * the time wl_surface.commit of the corresponding wl_surface is | 206 * the time wl_surface.commit of the corresponding wl_surface is |
| 254 * called. | 207 * called. |
| 255 * | 208 * |
| 256 * Once the window geometry of the surface is set once, it is not | 209 * Once the window geometry of the surface is set once, it is not |
| 257 * possible to unset it, and it will remain the same until | 210 * possible to unset it, and it will remain the same until |
| 258 * set_window_geometry is called again, even if a new subsurface or | 211 * set_window_geometry is called again, even if a new subsurface or |
| 259 * buffer is attached. | 212 * buffer is attached. |
| 260 * | 213 * |
| 261 * If never set, the value is the full bounds of the output. This | 214 * If never set, the value is the full bounds of the output. This |
| 262 * updates dynamically on every commit. | 215 * updates dynamically on every commit. |
| 263 * | 216 * |
| 264 * The arguments are given in the output coordinate space. | 217 * The arguments are given in the output coordinate space. |
| 265 * | 218 * |
| 266 * The width and height must be greater than zero. | 219 * The width and height must be greater than zero. |
| 267 */ | 220 */ |
| 268 void (*set_window_geometry)(struct wl_client *client, | 221 void (*set_window_geometry)(struct wl_client *client, |
| 269 struct wl_resource *resource, | 222 struct wl_resource *resource, |
| 270 int32_t x, | 223 int32_t x, |
| 271 int32_t y, | 224 int32_t y, |
| 272 int32_t width, | 225 int32_t width, |
| 273 int32_t height); | 226 int32_t height); |
| 274 /** | 227 /** |
| 275 » * set scale | 228 » * set_scale - set scale |
| 229 » * @scale: (none) |
| 276 * | 230 * |
| 277 * Set a scale factor that will be applied to surface and all | 231 * Set a scale factor that will be applied to surface and all |
| 278 * descendants. | 232 * descendants. |
| 279 */ | 233 */ |
| 280 void (*set_scale)(struct wl_client *client, | 234 void (*set_scale)(struct wl_client *client, |
| 281 struct wl_resource *resource, | 235 struct wl_resource *resource, |
| 282 wl_fixed_t scale); | 236 wl_fixed_t scale); |
| 283 /** | 237 /** |
| 284 » * fullscreen | 238 » * fullscreen - fullscreen |
| 285 * | 239 * |
| 286 * Request that surface is made fullscreen. | 240 * Request that surface is made fullscreen. |
| 287 * | 241 * |
| 288 * This is only a request that the window should be made | 242 * This is only a request that the window should be made |
| 289 * fullscreen. The compositor may choose to ignore this request. | 243 * fullscreen. The compositor may choose to ignore this request. |
| 290 * The client should listen to set_fullscreen events to determine | 244 * The client should listen to set_fullscreen events to determine |
| 291 * if the window was made fullscreen or not. | 245 * if the window was made fullscreen or not. |
| 292 » * @since 2 | 246 » * @since: 2 |
| 293 */ | 247 */ |
| 294 void (*fullscreen)(struct wl_client *client, | 248 void (*fullscreen)(struct wl_client *client, |
| 295 struct wl_resource *resource); | 249 struct wl_resource *resource); |
| 296 /** | 250 /** |
| 297 » * maximize | 251 » * maximize - maximize |
| 298 * | 252 * |
| 299 * Request that surface is maximized. The window geometry will be | 253 * Request that surface is maximized. The window geometry will be |
| 300 * updated to whatever the compositor finds appropriate for a | 254 * updated to whatever the compositor finds appropriate for a |
| 301 * maximized window. | 255 * maximized window. |
| 302 * | 256 * |
| 303 * This is only a request that the window should be maximized. The | 257 * This is only a request that the window should be maximized. The |
| 304 * compositor may choose to ignore this request. The client should | 258 * compositor may choose to ignore this request. The client should |
| 305 * listen to set_maximized events to determine if the window was | 259 * listen to set_maximized events to determine if the window was |
| 306 * maximized or not. | 260 * maximized or not. |
| 307 » * @since 2 | 261 » * @since: 2 |
| 308 */ | 262 */ |
| 309 void (*maximize)(struct wl_client *client, | 263 void (*maximize)(struct wl_client *client, |
| 310 struct wl_resource *resource); | 264 struct wl_resource *resource); |
| 311 /** | 265 /** |
| 312 » * minimize | 266 » * minimize - minimize |
| 313 * | 267 * |
| 314 * Request that surface is minimized. | 268 * Request that surface is minimized. |
| 315 * | 269 * |
| 316 * This is only a request that the window should be minimized. The | 270 * This is only a request that the window should be minimized. The |
| 317 * compositor may choose to ignore this request. The client should | 271 * compositor may choose to ignore this request. The client should |
| 318 * listen to set_minimized events to determine if the window was | 272 * listen to set_minimized events to determine if the window was |
| 319 * minimized or not. | 273 * minimized or not. |
| 320 » * @since 2 | 274 » * @since: 2 |
| 321 */ | 275 */ |
| 322 void (*minimize)(struct wl_client *client, | 276 void (*minimize)(struct wl_client *client, |
| 323 struct wl_resource *resource); | 277 struct wl_resource *resource); |
| 324 /** | 278 /** |
| 325 » * restore | 279 » * restore - restore |
| 326 * | 280 * |
| 327 * Request that surface is restored. This restores the window | 281 * Request that surface is restored. This restores the window |
| 328 * geometry to what it was before the window was minimized, | 282 * geometry to what it was before the window was minimized, |
| 329 * maximized or made fullscreen. | 283 * maximized or made fullscreen. |
| 330 * | 284 * |
| 331 * This is only a request that the window should be restored. The | 285 * This is only a request that the window should be restored. The |
| 332 * compositor may choose to ignore this request. The client should | 286 * compositor may choose to ignore this request. The client should |
| 333 * listen to unset_maximized, unset_minimize and unset_fullscreen | 287 * listen to unset_maximized, unset_minimize and unset_fullscreen |
| 334 * events to determine if the window was restored or not. | 288 * events to determine if the window was restored or not. |
| 335 » * @since 2 | 289 » * @since: 2 |
| 336 */ | 290 */ |
| 337 void (*restore)(struct wl_client *client, | 291 void (*restore)(struct wl_client *client, |
| 338 struct wl_resource *resource); | 292 struct wl_resource *resource); |
| 339 /** | 293 /** |
| 340 » * pin | 294 » * pin - pin |
| 341 * | 295 * |
| 342 * Request that surface is pinned. | 296 * Request that surface is pinned. |
| 343 * | 297 * |
| 344 * This is only a request that the window should be pinned. The | 298 * This is only a request that the window should be pinned. The |
| 345 * compositor may choose to ignore this request. The client should | 299 * compositor may choose to ignore this request. The client should |
| 346 * listen to set_pinned events to determine if the window was | 300 * listen to set_pinned events to determine if the window was |
| 347 * pinned or not. | 301 * pinned or not. |
| 348 » * @since 3 | 302 » * @since: 3 |
| 349 */ | 303 */ |
| 350 void (*pin)(struct wl_client *client, | 304 void (*pin)(struct wl_client *client, |
| 351 struct wl_resource *resource); | 305 struct wl_resource *resource); |
| 352 /** | 306 /** |
| 353 » * unpin | 307 » * unpin - unpin |
| 354 * | 308 * |
| 355 * Request that surface is unpinned. | 309 * Request that surface is unpinned. |
| 356 * | 310 * |
| 357 * This is only a request that the window should be unpinned. The | 311 * This is only a request that the window should be unpinned. The |
| 358 * compositor may choose to ignore this request. The client should | 312 * compositor may choose to ignore this request. The client should |
| 359 * listen to unset_pinned events to determine if the window was | 313 * listen to unset_pinned events to determine if the window was |
| 360 * unpinned or not. | 314 * unpinned or not. |
| 361 » * @since 3 | 315 » * @since: 3 |
| 362 */ | 316 */ |
| 363 void (*unpin)(struct wl_client *client, | 317 void (*unpin)(struct wl_client *client, |
| 364 struct wl_resource *resource); | 318 struct wl_resource *resource); |
| 365 /** | 319 /** |
| 366 » * unfullscreen | 320 » * unfullscreen - unfullscreen |
| 367 * | 321 * |
| 368 * Request that surface is made unfullscreen. | 322 * Request that surface is made unfullscreen. |
| 369 * | 323 * |
| 370 * This is only a request that the window should be made | 324 * This is only a request that the window should be made |
| 371 * unfullscreen. The compositor may choose to ignore this request. | 325 * unfullscreen. The compositor may choose to ignore this request. |
| 372 * The client should listen to unset_fullscreen events to determine | 326 * The client should listen to unset_fullscreen events to determine |
| 373 * if the window was made unfullscreen or not. | 327 * if the window was made unfullscreen or not. |
| 374 » * @since 3 | 328 » * @since: 3 |
| 375 */ | 329 */ |
| 376 void (*unfullscreen)(struct wl_client *client, | 330 void (*unfullscreen)(struct wl_client *client, |
| 377 struct wl_resource *resource); | 331 struct wl_resource *resource); |
| 378 }; | 332 }; |
| 379 | 333 |
| 380 #define ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN 0 | 334 #define ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN 0 |
| 381 #define ZWP_REMOTE_SURFACE_V1_UNSET_FULLSCREEN 1 | 335 #define ZWP_REMOTE_SURFACE_V1_UNSET_FULLSCREEN 1 |
| 382 #define ZWP_REMOTE_SURFACE_V1_CLOSE 2 | 336 #define ZWP_REMOTE_SURFACE_V1_CLOSE 2 |
| 383 #define ZWP_REMOTE_SURFACE_V1_SET_MAXIMIZED 3 | 337 #define ZWP_REMOTE_SURFACE_V1_SET_MAXIMIZED 3 |
| 384 #define ZWP_REMOTE_SURFACE_V1_UNSET_MAXIMIZED 4 | 338 #define ZWP_REMOTE_SURFACE_V1_UNSET_MAXIMIZED 4 |
| 385 #define ZWP_REMOTE_SURFACE_V1_SET_MINIMIZED 5 | 339 #define ZWP_REMOTE_SURFACE_V1_SET_MINIMIZED 5 |
| 386 #define ZWP_REMOTE_SURFACE_V1_UNSET_MINIMIZED 6 | 340 #define ZWP_REMOTE_SURFACE_V1_UNSET_MINIMIZED 6 |
| 387 #define ZWP_REMOTE_SURFACE_V1_SET_PIN 7 | 341 #define ZWP_REMOTE_SURFACE_V1_SET_PIN 7 |
| 388 #define ZWP_REMOTE_SURFACE_V1_UNSET_PIN 8 | 342 #define ZWP_REMOTE_SURFACE_V1_UNSET_PIN 8 |
| 389 #define ZWP_REMOTE_SURFACE_V1_SET_PINNED 9 | 343 #define ZWP_REMOTE_SURFACE_V1_SET_PINNED 9 |
| 390 #define ZWP_REMOTE_SURFACE_V1_UNSET_PINNED 10 | 344 #define ZWP_REMOTE_SURFACE_V1_UNSET_PINNED 10 |
| 391 | 345 |
| 392 /** | |
| 393 * @ingroup iface_zwp_remote_surface_v1 | |
| 394 */ | |
| 395 #define ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN_SINCE_VERSION 1 | |
| 396 /** | |
| 397 * @ingroup iface_zwp_remote_surface_v1 | |
| 398 */ | |
| 399 #define ZWP_REMOTE_SURFACE_V1_UNSET_FULLSCREEN_SINCE_VERSION 1 | |
| 400 /** | |
| 401 * @ingroup iface_zwp_remote_surface_v1 | |
| 402 */ | |
| 403 #define ZWP_REMOTE_SURFACE_V1_CLOSE_SINCE_VERSION 1 | |
| 404 /** | |
| 405 * @ingroup iface_zwp_remote_surface_v1 | |
| 406 */ | |
| 407 #define ZWP_REMOTE_SURFACE_V1_SET_MAXIMIZED_SINCE_VERSION 2 | |
| 408 /** | |
| 409 * @ingroup iface_zwp_remote_surface_v1 | |
| 410 */ | |
| 411 #define ZWP_REMOTE_SURFACE_V1_UNSET_MAXIMIZED_SINCE_VERSION 2 | |
| 412 /** | |
| 413 * @ingroup iface_zwp_remote_surface_v1 | |
| 414 */ | |
| 415 #define ZWP_REMOTE_SURFACE_V1_SET_MINIMIZED_SINCE_VERSION 2 | |
| 416 /** | |
| 417 * @ingroup iface_zwp_remote_surface_v1 | |
| 418 */ | |
| 419 #define ZWP_REMOTE_SURFACE_V1_UNSET_MINIMIZED_SINCE_VERSION 2 | |
| 420 /** | |
| 421 * @ingroup iface_zwp_remote_surface_v1 | |
| 422 */ | |
| 423 #define ZWP_REMOTE_SURFACE_V1_SET_PIN_SINCE_VERSION 3 | |
| 424 /** | |
| 425 * @ingroup iface_zwp_remote_surface_v1 | |
| 426 */ | |
| 427 #define ZWP_REMOTE_SURFACE_V1_UNSET_PIN_SINCE_VERSION 3 | |
| 428 /** | |
| 429 * @ingroup iface_zwp_remote_surface_v1 | |
| 430 */ | |
| 431 #define ZWP_REMOTE_SURFACE_V1_SET_PINNED_SINCE_VERSION 3 | |
| 432 /** | |
| 433 * @ingroup iface_zwp_remote_surface_v1 | |
| 434 */ | |
| 435 #define ZWP_REMOTE_SURFACE_V1_UNSET_PINNED_SINCE_VERSION 3 | |
| 436 | |
| 437 /** | |
| 438 * @ingroup iface_zwp_remote_surface_v1 | |
| 439 * Sends an set_fullscreen event to the client owning the resource. | |
| 440 * @param resource_ The client's resource | |
| 441 */ | |
| 442 static inline void | 346 static inline void |
| 443 zwp_remote_surface_v1_send_set_fullscreen(struct wl_resource *resource_) | 347 zwp_remote_surface_v1_send_set_fullscreen(struct wl_resource *resource_) |
| 444 { | 348 { |
| 445 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN); | 349 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_FULLSCREEN); |
| 446 } | 350 } |
| 447 | 351 |
| 448 /** | |
| 449 * @ingroup iface_zwp_remote_surface_v1 | |
| 450 * Sends an unset_fullscreen event to the client owning the resource. | |
| 451 * @param resource_ The client's resource | |
| 452 */ | |
| 453 static inline void | 352 static inline void |
| 454 zwp_remote_surface_v1_send_unset_fullscreen(struct wl_resource *resource_) | 353 zwp_remote_surface_v1_send_unset_fullscreen(struct wl_resource *resource_) |
| 455 { | 354 { |
| 456 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_FULLSCREEN
); | 355 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_FULLSCREEN
); |
| 457 } | 356 } |
| 458 | 357 |
| 459 /** | |
| 460 * @ingroup iface_zwp_remote_surface_v1 | |
| 461 * Sends an close event to the client owning the resource. | |
| 462 * @param resource_ The client's resource | |
| 463 */ | |
| 464 static inline void | 358 static inline void |
| 465 zwp_remote_surface_v1_send_close(struct wl_resource *resource_) | 359 zwp_remote_surface_v1_send_close(struct wl_resource *resource_) |
| 466 { | 360 { |
| 467 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_CLOSE); | 361 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_CLOSE); |
| 468 } | 362 } |
| 469 | 363 |
| 470 /** | |
| 471 * @ingroup iface_zwp_remote_surface_v1 | |
| 472 * Sends an set_maximized event to the client owning the resource. | |
| 473 * @param resource_ The client's resource | |
| 474 */ | |
| 475 static inline void | 364 static inline void |
| 476 zwp_remote_surface_v1_send_set_maximized(struct wl_resource *resource_) | 365 zwp_remote_surface_v1_send_set_maximized(struct wl_resource *resource_) |
| 477 { | 366 { |
| 478 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_MAXIMIZED); | 367 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_MAXIMIZED); |
| 479 } | 368 } |
| 480 | 369 |
| 481 /** | |
| 482 * @ingroup iface_zwp_remote_surface_v1 | |
| 483 * Sends an unset_maximized event to the client owning the resource. | |
| 484 * @param resource_ The client's resource | |
| 485 */ | |
| 486 static inline void | 370 static inline void |
| 487 zwp_remote_surface_v1_send_unset_maximized(struct wl_resource *resource_) | 371 zwp_remote_surface_v1_send_unset_maximized(struct wl_resource *resource_) |
| 488 { | 372 { |
| 489 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_MAXIMIZED)
; | 373 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_MAXIMIZED)
; |
| 490 } | 374 } |
| 491 | 375 |
| 492 /** | |
| 493 * @ingroup iface_zwp_remote_surface_v1 | |
| 494 * Sends an set_minimized event to the client owning the resource. | |
| 495 * @param resource_ The client's resource | |
| 496 */ | |
| 497 static inline void | 376 static inline void |
| 498 zwp_remote_surface_v1_send_set_minimized(struct wl_resource *resource_) | 377 zwp_remote_surface_v1_send_set_minimized(struct wl_resource *resource_) |
| 499 { | 378 { |
| 500 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_MINIMIZED); | 379 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_MINIMIZED); |
| 501 } | 380 } |
| 502 | 381 |
| 503 /** | |
| 504 * @ingroup iface_zwp_remote_surface_v1 | |
| 505 * Sends an unset_minimized event to the client owning the resource. | |
| 506 * @param resource_ The client's resource | |
| 507 */ | |
| 508 static inline void | 382 static inline void |
| 509 zwp_remote_surface_v1_send_unset_minimized(struct wl_resource *resource_) | 383 zwp_remote_surface_v1_send_unset_minimized(struct wl_resource *resource_) |
| 510 { | 384 { |
| 511 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_MINIMIZED)
; | 385 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_MINIMIZED)
; |
| 512 } | 386 } |
| 513 | 387 |
| 514 /** | |
| 515 * @ingroup iface_zwp_remote_surface_v1 | |
| 516 * Sends an set_pin event to the client owning the resource. | |
| 517 * @param resource_ The client's resource | |
| 518 */ | |
| 519 static inline void | 388 static inline void |
| 520 zwp_remote_surface_v1_send_set_pin(struct wl_resource *resource_) | 389 zwp_remote_surface_v1_send_set_pin(struct wl_resource *resource_) |
| 521 { | 390 { |
| 522 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_PIN); | 391 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_PIN); |
| 523 } | 392 } |
| 524 | 393 |
| 525 /** | |
| 526 * @ingroup iface_zwp_remote_surface_v1 | |
| 527 * Sends an unset_pin event to the client owning the resource. | |
| 528 * @param resource_ The client's resource | |
| 529 */ | |
| 530 static inline void | 394 static inline void |
| 531 zwp_remote_surface_v1_send_unset_pin(struct wl_resource *resource_) | 395 zwp_remote_surface_v1_send_unset_pin(struct wl_resource *resource_) |
| 532 { | 396 { |
| 533 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_PIN); | 397 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_PIN); |
| 534 } | 398 } |
| 535 | 399 |
| 536 /** | |
| 537 * @ingroup iface_zwp_remote_surface_v1 | |
| 538 * Sends an set_pinned event to the client owning the resource. | |
| 539 * @param resource_ The client's resource | |
| 540 */ | |
| 541 static inline void | 400 static inline void |
| 542 zwp_remote_surface_v1_send_set_pinned(struct wl_resource *resource_) | 401 zwp_remote_surface_v1_send_set_pinned(struct wl_resource *resource_) |
| 543 { | 402 { |
| 544 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_PINNED); | 403 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_SET_PINNED); |
| 545 } | 404 } |
| 546 | 405 |
| 547 /** | |
| 548 * @ingroup iface_zwp_remote_surface_v1 | |
| 549 * Sends an unset_pinned event to the client owning the resource. | |
| 550 * @param resource_ The client's resource | |
| 551 */ | |
| 552 static inline void | 406 static inline void |
| 553 zwp_remote_surface_v1_send_unset_pinned(struct wl_resource *resource_) | 407 zwp_remote_surface_v1_send_unset_pinned(struct wl_resource *resource_) |
| 554 { | 408 { |
| 555 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_PINNED); | 409 wl_resource_post_event(resource_, ZWP_REMOTE_SURFACE_V1_UNSET_PINNED); |
| 556 } | 410 } |
| 557 | 411 |
| 412 /** |
| 413 * zwp_notification_surface_v1 - A notification window |
| 414 * @destroy: Destroy the notification_surface |
| 415 * |
| 416 * An interface that may be implemented by a wl_surface to host |
| 417 * notification contents. |
| 418 */ |
| 419 struct zwp_notification_surface_v1_interface { |
| 420 /** |
| 421 * destroy - Destroy the notification_surface |
| 422 * |
| 423 * Unmap and destroy the notification surface. |
| 424 */ |
| 425 void (*destroy)(struct wl_client *client, |
| 426 struct wl_resource *resource); |
| 427 }; |
| 428 |
| 558 #ifdef __cplusplus | 429 #ifdef __cplusplus |
| 559 } | 430 } |
| 560 #endif | 431 #endif |
| 561 | 432 |
| 562 #endif | 433 #endif |
| OLD | NEW |