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

Side by Side Diff: third_party/wayland-protocols/include/protocol/remote-shell-unstable-v1-server-protocol.h

Issue 2062133002: third_party: Update to version 6 of remote_shell_protocol (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 unified diff | Download patch
OLDNEW
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698