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

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

Issue 2350633002: third_party: Switch to zcr prefix for downstream wayland interfaces. (Closed)
Patch Set: Created 4 years, 3 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 /* Generated by wayland-scanner 1.11.0 */
2 2
3 #ifndef REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H 3 #ifndef REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H
4 #define REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H 4 #define REMOTE_SHELL_UNSTABLE_V1_SERVER_PROTOCOL_H
5 5
6 #include <stdint.h> 6 #include <stdint.h>
7 #include <stddef.h> 7 #include <stddef.h>
8 #include "wayland-server.h" 8 #include "wayland-server.h"
9 9
10 #ifdef __cplusplus 10 #ifdef __cplusplus
(...skipping 15 matching lines...) Expand all
26 * Warning! The protocol described in this file is experimental and backward 26 * Warning! The protocol described in this file is experimental and backward
27 * incompatible changes may be made. Backward compatible changes may be added 27 * incompatible changes may be made. Backward compatible changes may be added
28 * together with the corresponding interface version bump. Backward 28 * together with the corresponding interface version bump. Backward
29 * incompatible changes are done by bumping the version number in the protocol 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 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 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 32 * protocol and interface names are removed and the interface version number is
33 * reset. 33 * reset.
34 * 34 *
35 * @section page_ifaces_remote_shell_unstable_v1 Interfaces 35 * @section page_ifaces_remote_shell_unstable_v1 Interfaces
36 * - @subpage page_iface_zwp_remote_shell_v1 - remote_shell 36 * - @subpage page_iface_zcr_remote_shell_v1 - remote_shell
37 * - @subpage page_iface_zwp_remote_surface_v1 - A desktop window 37 * - @subpage page_iface_zcr_remote_surface_v1 - A desktop window
38 * - @subpage page_iface_zwp_notification_surface_v1 - A notification window 38 * - @subpage page_iface_zcr_notification_surface_v1 - A notification window
39 * - @subpage page_iface_zwp_remote_shell_v1 - DEPRECATED
40 * - @subpage page_iface_zwp_remote_surface_v1 - DEPRECATED
41 * - @subpage page_iface_zwp_notification_surface_v1 - DEPRECATED
39 * @section page_copyright_remote_shell_unstable_v1 Copyright 42 * @section page_copyright_remote_shell_unstable_v1 Copyright
40 * <pre> 43 * <pre>
41 * 44 *
42 * Copyright 2016 The Chromium Authors. 45 * Copyright 2016 The Chromium Authors.
43 * 46 *
44 * Permission is hereby granted, free of charge, to any person obtaining a 47 * Permission is hereby granted, free of charge, to any person obtaining a
45 * copy of this software and associated documentation files (the "Software"), 48 * copy of this software and associated documentation files (the "Software"),
46 * to deal in the Software without restriction, including without limitation 49 * to deal in the Software without restriction, including without limitation
47 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 50 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
48 * and/or sell copies of the Software, and to permit persons to whom the 51 * and/or sell copies of the Software, and to permit persons to whom the
49 * Software is furnished to do so, subject to the following conditions: 52 * Software is furnished to do so, subject to the following conditions:
50 * 53 *
51 * The above copyright notice and this permission notice (including the next 54 * The above copyright notice and this permission notice (including the next
52 * paragraph) shall be included in all copies or substantial portions of the 55 * paragraph) shall be included in all copies or substantial portions of the
53 * Software. 56 * Software.
54 * 57 *
55 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 58 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
56 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 59 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
57 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 60 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
58 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 61 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
59 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 62 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
60 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 63 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
61 * DEALINGS IN THE SOFTWARE. 64 * DEALINGS IN THE SOFTWARE.
62 * </pre> 65 * </pre>
63 */ 66 */
64 struct wl_surface; 67 struct wl_surface;
68 struct zcr_notification_surface_v1;
69 struct zcr_remote_shell_v1;
70 struct zcr_remote_surface_v1;
65 struct zwp_notification_surface_v1; 71 struct zwp_notification_surface_v1;
66 struct zwp_remote_shell_v1; 72 struct zwp_remote_shell_v1;
67 struct zwp_remote_surface_v1; 73 struct zwp_remote_surface_v1;
68 74
69 /** 75 /**
76 * @page page_iface_zcr_remote_shell_v1 zcr_remote_shell_v1
77 * @section page_iface_zcr_remote_shell_v1_desc Description
78 *
79 * The global interface that allows clients to turn a wl_surface into a
80 * "real window" which is remotely managed but can be stacked, activated
81 * and made fullscreen by the user.
82 * @section page_iface_zcr_remote_shell_v1_api API
83 * See @ref iface_zcr_remote_shell_v1.
84 */
85 /**
86 * @defgroup iface_zcr_remote_shell_v1 The zcr_remote_shell_v1 interface
87 *
88 * The global interface that allows clients to turn a wl_surface into a
89 * "real window" which is remotely managed but can be stacked, activated
90 * and made fullscreen by the user.
91 */
92 extern const struct wl_interface zcr_remote_shell_v1_interface;
93 /**
94 * @page page_iface_zcr_remote_surface_v1 zcr_remote_surface_v1
95 * @section page_iface_zcr_remote_surface_v1_desc Description
96 *
97 * An interface that may be implemented by a wl_surface, for
98 * implementations that provide a desktop-style user interface
99 * and allows for remotely managed windows.
100 *
101 * It provides requests to treat surfaces like windows, allowing to set
102 * properties like app id and geometry.
103 *
104 * The client must call wl_surface.commit on the corresponding wl_surface
105 * for the remote_surface state to take effect.
106 *
107 * For a surface to be mapped by the compositor the client must have
108 * committed both an remote_surface state and a buffer.
109 * @section page_iface_zcr_remote_surface_v1_api API
110 * See @ref iface_zcr_remote_surface_v1.
111 */
112 /**
113 * @defgroup iface_zcr_remote_surface_v1 The zcr_remote_surface_v1 interface
114 *
115 * An interface that may be implemented by a wl_surface, for
116 * implementations that provide a desktop-style user interface
117 * and allows for remotely managed windows.
118 *
119 * It provides requests to treat surfaces like windows, allowing to set
120 * properties like app id and geometry.
121 *
122 * The client must call wl_surface.commit on the corresponding wl_surface
123 * for the remote_surface state to take effect.
124 *
125 * For a surface to be mapped by the compositor the client must have
126 * committed both an remote_surface state and a buffer.
127 */
128 extern const struct wl_interface zcr_remote_surface_v1_interface;
129 /**
130 * @page page_iface_zcr_notification_surface_v1 zcr_notification_surface_v1
131 * @section page_iface_zcr_notification_surface_v1_desc Description
132 *
133 * An interface that may be implemented by a wl_surface to host
134 * notification contents.
135 * @section page_iface_zcr_notification_surface_v1_api API
136 * See @ref iface_zcr_notification_surface_v1.
137 */
138 /**
139 * @defgroup iface_zcr_notification_surface_v1 The zcr_notification_surface_v1 i nterface
140 *
141 * An interface that may be implemented by a wl_surface to host
142 * notification contents.
143 */
144 extern const struct wl_interface zcr_notification_surface_v1_interface;
145 /**
70 * @page page_iface_zwp_remote_shell_v1 zwp_remote_shell_v1 146 * @page page_iface_zwp_remote_shell_v1 zwp_remote_shell_v1
71 * @section page_iface_zwp_remote_shell_v1_desc Description 147 * @section page_iface_zwp_remote_shell_v1_desc Description
72 * 148 *
73 * The global interface that allows clients to turn a wl_surface into a 149 * The global interface that allows clients to turn a wl_surface into a
74 * "real window" which is remotely managed but can be stacked, activated 150 * "real window" which is remotely managed but can be stacked, activated
75 * and made fullscreen by the user. 151 * and made fullscreen by the user.
76 * @section page_iface_zwp_remote_shell_v1_api API 152 * @section page_iface_zwp_remote_shell_v1_api API
77 * See @ref iface_zwp_remote_shell_v1. 153 * See @ref iface_zwp_remote_shell_v1.
78 */ 154 */
79 /** 155 /**
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 * See @ref iface_zwp_notification_surface_v1. 206 * See @ref iface_zwp_notification_surface_v1.
131 */ 207 */
132 /** 208 /**
133 * @defgroup iface_zwp_notification_surface_v1 The zwp_notification_surface_v1 i nterface 209 * @defgroup iface_zwp_notification_surface_v1 The zwp_notification_surface_v1 i nterface
134 * 210 *
135 * An interface that may be implemented by a wl_surface to host 211 * An interface that may be implemented by a wl_surface to host
136 * notification contents. 212 * notification contents.
137 */ 213 */
138 extern const struct wl_interface zwp_notification_surface_v1_interface; 214 extern const struct wl_interface zwp_notification_surface_v1_interface;
139 215
216 #ifndef ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM
217 #define ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM
218 /**
219 * @ingroup iface_zcr_remote_shell_v1
220 * containers for remote surfaces
221 *
222 * Determine how a remote surface should be stacked relative to other
223 * shell surfaces.
224 */
225 enum zcr_remote_shell_v1_container {
226 /**
227 * default container
228 */
229 ZCR_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1,
230 /**
231 * system modal container
232 */
233 ZCR_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2,
234 };
235 #endif /* ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM */
236
237 #ifndef ZCR_REMOTE_SHELL_V1_STATE_TYPE_ENUM
238 #define ZCR_REMOTE_SHELL_V1_STATE_TYPE_ENUM
239 /**
240 * @ingroup iface_zcr_remote_shell_v1
241 * state types for remote surfaces
242 *
243 * Defines common show states for shell surfaces.
244 */
245 enum zcr_remote_shell_v1_state_type {
246 /**
247 * normal window state
248 */
249 ZCR_REMOTE_SHELL_V1_STATE_TYPE_NORMAL = 1,
250 /**
251 * minimized window state
252 */
253 ZCR_REMOTE_SHELL_V1_STATE_TYPE_MINIMIZED = 2,
254 /**
255 * maximized window state
256 */
257 ZCR_REMOTE_SHELL_V1_STATE_TYPE_MAXIMIZED = 3,
258 /**
259 * fullscreen window state
260 */
261 ZCR_REMOTE_SHELL_V1_STATE_TYPE_FULLSCREEN = 4,
262 /**
263 * pinned window state
264 */
265 ZCR_REMOTE_SHELL_V1_STATE_TYPE_PINNED = 5,
266 /**
267 * trusted pinned window state
268 */
269 ZCR_REMOTE_SHELL_V1_STATE_TYPE_TRUSTED_PINNED = 6,
270 };
271 #endif /* ZCR_REMOTE_SHELL_V1_STATE_TYPE_ENUM */
272
273 #ifndef ZCR_REMOTE_SHELL_V1_ERROR_ENUM
274 #define ZCR_REMOTE_SHELL_V1_ERROR_ENUM
275 enum zcr_remote_shell_v1_error {
276 /**
277 * given wl_surface has another role
278 */
279 ZCR_REMOTE_SHELL_V1_ERROR_ROLE = 0,
280 /**
281 * invalid notification id
282 */
283 ZCR_REMOTE_SHELL_V1_ERROR_INVALID_NOTIFICATION_ID = 1,
284 };
285 #endif /* ZCR_REMOTE_SHELL_V1_ERROR_ENUM */
286
287 #ifndef ZCR_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM
288 #define ZCR_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM
289 /**
290 * @ingroup iface_zcr_remote_shell_v1
291 * the layout mode
292 *
293 * Determine how a client should layout surfaces.
294 */
295 enum zcr_remote_shell_v1_layout_mode {
296 /**
297 * multiple windows
298 */
299 ZCR_REMOTE_SHELL_V1_LAYOUT_MODE_WINDOWED = 1,
300 /**
301 * restricted mode for tablet
302 */
303 ZCR_REMOTE_SHELL_V1_LAYOUT_MODE_TABLET = 2,
304 };
305 #endif /* ZCR_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM */
306
307 /**
308 * @ingroup iface_zcr_remote_shell_v1
309 * @struct zcr_remote_shell_v1_interface
310 */
311 struct zcr_remote_shell_v1_interface {
312 /**
313 * destroy remote_shell
314 *
315 * Destroy this remote_shell object.
316 *
317 * Destroying a bound remote_shell object while there are surfaces
318 * still alive created by this remote_shell object instance is
319 * illegal and will result in a protocol error.
320 */
321 void (*destroy)(struct wl_client *client,
322 struct wl_resource *resource);
323 /**
324 * create a remote shell surface from a surface
325 *
326 * This creates an remote_surface for the given surface and gives
327 * it the remote_surface role. A wl_surface can only be given a
328 * remote_surface role once. If get_remote_surface is called with a
329 * wl_surface that already has an active remote_surface associated
330 * with it, or if it had any other role, an error is raised.
331 *
332 * See the documentation of remote_surface for more details about
333 * what an remote_surface is and how it is used.
334 */
335 void (*get_remote_surface)(struct wl_client *client,
336 struct wl_resource *resource,
337 uint32_t id,
338 struct wl_resource *surface,
339 uint32_t container);
340 /**
341 * create a notification surface from a surface
342 *
343 * Creates a notification_surface for the given surface, gives it
344 * the notification_surface role and associated it with a
345 * notification id.
346 */
347 void (*get_notification_surface)(struct wl_client *client,
348 struct wl_resource *resource,
349 uint32_t id,
350 struct wl_resource *surface,
351 const char *notification_id);
352 };
353
354 #define ZCR_REMOTE_SHELL_V1_ACTIVATED 0
355 #define ZCR_REMOTE_SHELL_V1_CONFIGURATION_CHANGED 1
356
357 /**
358 * @ingroup iface_zcr_remote_shell_v1
359 */
360 #define ZCR_REMOTE_SHELL_V1_ACTIVATED_SINCE_VERSION 1
361 /**
362 * @ingroup iface_zcr_remote_shell_v1
363 */
364 #define ZCR_REMOTE_SHELL_V1_CONFIGURATION_CHANGED_SINCE_VERSION 1
365
366 /**
367 * @ingroup iface_zcr_remote_shell_v1
368 * Sends an activated event to the client owning the resource.
369 * @param resource_ The client's resource
370 */
371 static inline void
372 zcr_remote_shell_v1_send_activated(struct wl_resource *resource_, struct wl_reso urce *gained_active, struct wl_resource *lost_active)
373 {
374 wl_resource_post_event(resource_, ZCR_REMOTE_SHELL_V1_ACTIVATED, gained_ active, lost_active);
375 }
376
377 /**
378 * @ingroup iface_zcr_remote_shell_v1
379 * Sends an configuration_changed event to the client owning the resource.
380 * @param resource_ The client's resource
381 */
382 static inline void
383 zcr_remote_shell_v1_send_configuration_changed(struct wl_resource *resource_, in t32_t width, int32_t height, int32_t transform, wl_fixed_t scale_factor, int32_t work_area_inset_left, int32_t work_area_inset_top, int32_t work_area_inset_righ t, int32_t work_area_inset_bottom, uint32_t layout_mode)
384 {
385 wl_resource_post_event(resource_, ZCR_REMOTE_SHELL_V1_CONFIGURATION_CHAN GED, width, height, transform, scale_factor, work_area_inset_left, work_area_ins et_top, work_area_inset_right, work_area_inset_bottom, layout_mode);
386 }
387
388 /**
389 * @ingroup iface_zcr_remote_surface_v1
390 * @struct zcr_remote_surface_v1_interface
391 */
392 struct zcr_remote_surface_v1_interface {
393 /**
394 * Destroy the remote_surface
395 *
396 * Unmap and destroy the window. The window will be effectively
397 * hidden from the user's point of view, and all state will be
398 * lost.
399 */
400 void (*destroy)(struct wl_client *client,
401 struct wl_resource *resource);
402 /**
403 * set application ID
404 *
405 * Set an application identifier for the surface.
406 */
407 void (*set_app_id)(struct wl_client *client,
408 struct wl_resource *resource,
409 const char *app_id);
410 /**
411 * set the new window geometry
412 *
413 * The window geometry of a window is its "visible bounds" from
414 * the user's perspective. Client-side decorations often have
415 * invisible portions like drop-shadows which should be ignored for
416 * the purposes of aligning, placing and constraining windows.
417 *
418 * The window geometry is double buffered, and will be applied at
419 * the time wl_surface.commit of the corresponding wl_surface is
420 * called.
421 *
422 * Once the window geometry of the surface is set once, it is not
423 * possible to unset it, and it will remain the same until
424 * set_window_geometry is called again, even if a new subsurface or
425 * buffer is attached.
426 *
427 * If never set, the value is the full bounds of the output. This
428 * updates dynamically on every commit.
429 *
430 * The arguments are given in the output coordinate space.
431 *
432 * The width and height must be greater than zero.
433 */
434 void (*set_window_geometry)(struct wl_client *client,
435 struct wl_resource *resource,
436 int32_t x,
437 int32_t y,
438 int32_t width,
439 int32_t height);
440 /**
441 * set scale
442 *
443 * Set a scale factor that will be applied to surface and all
444 * descendants.
445 */
446 void (*set_scale)(struct wl_client *client,
447 struct wl_resource *resource,
448 wl_fixed_t scale);
449 /**
450 * set a rectangular shadow
451 *
452 * Request that surface needs a rectangular shadow.
453 *
454 * This is only a request that the surface should have a
455 * rectangular shadow. The compositor may choose to ignore this
456 * request.
457 *
458 * The arguments are given in the output coordinate space and
459 * specifies the inner bounds of the shadow.
460 *
461 * The arguments are given in the output coordinate space.
462 * Specifying zero width and height will disable the shadow.
463 */
464 void (*set_rectangular_shadow)(struct wl_client *client,
465 struct wl_resource *resource,
466 int32_t x,
467 int32_t y,
468 int32_t width,
469 int32_t height);
470 /**
471 * suggests the window's background opacity
472 *
473 * Suggests the window's background opacity when the shadow is
474 * requested.
475 */
476 void (*set_rectangular_shadow_background_opacity)(struct wl_client *clie nt,
477 struct wl_resource *re source,
478 wl_fixed_t opacity);
479 /**
480 * set surface title
481 *
482 * Set a short title for the surface.
483 *
484 * This string may be used to identify the surface in a task bar,
485 * window list, or other user interface elements provided by the
486 * compositor.
487 *
488 * The string must be encoded in UTF-8.
489 */
490 void (*set_title)(struct wl_client *client,
491 struct wl_resource *resource,
492 const char *title);
493 /**
494 * set top inset for surface
495 *
496 * Set distance from the top of the surface to the contents.
497 *
498 * This distance typically represents the size of the window
499 * caption.
500 */
501 void (*set_top_inset)(struct wl_client *client,
502 struct wl_resource *resource,
503 int32_t height);
504 /**
505 * make the surface active
506 *
507 * Make the surface active and bring it to the front.
508 * @param serial the serial of the user event
509 */
510 void (*activate)(struct wl_client *client,
511 struct wl_resource *resource,
512 uint32_t serial);
513 /**
514 * maximize
515 *
516 * Request that surface is maximized. The window geometry will be
517 * updated to whatever the compositor finds appropriate for a
518 * maximized window.
519 *
520 * This is only a request that the window should be maximized. The
521 * compositor may choose to ignore this request. The client should
522 * listen to set_maximized events to determine if the window was
523 * maximized or not.
524 */
525 void (*maximize)(struct wl_client *client,
526 struct wl_resource *resource);
527 /**
528 * minimize
529 *
530 * Request that surface is minimized.
531 *
532 * This is only a request that the window should be minimized. The
533 * compositor may choose to ignore this request. The client should
534 * listen to set_minimized events to determine if the window was
535 * minimized or not.
536 */
537 void (*minimize)(struct wl_client *client,
538 struct wl_resource *resource);
539 /**
540 * restore
541 *
542 * Request that surface is restored. This restores the window
543 * geometry to what it was before the window was minimized,
544 * maximized or made fullscreen.
545 *
546 * This is only a request that the window should be restored. The
547 * compositor may choose to ignore this request. The client should
548 * listen to unset_maximized, unset_minimize and unset_fullscreen
549 * events to determine if the window was restored or not.
550 */
551 void (*restore)(struct wl_client *client,
552 struct wl_resource *resource);
553 /**
554 * fullscreen
555 *
556 * Request that surface is made fullscreen.
557 *
558 * This is only a request that the window should be made
559 * fullscreen. The compositor may choose to ignore this request.
560 * The client should listen to set_fullscreen events to determine
561 * if the window was made fullscreen or not.
562 */
563 void (*fullscreen)(struct wl_client *client,
564 struct wl_resource *resource);
565 /**
566 * unfullscreen
567 *
568 * Request that surface is made unfullscreen.
569 *
570 * This is only a request that the window should be made
571 * unfullscreen. The compositor may choose to ignore this request.
572 * The client should listen to unset_fullscreen events to determine
573 * if the window was made unfullscreen or not.
574 */
575 void (*unfullscreen)(struct wl_client *client,
576 struct wl_resource *resource);
577 /**
578 * pin
579 *
580 * Request that surface is pinned.
581 *
582 * This is only a request that the window should be pinned. The
583 * compositor may choose to ignore this request. The client should
584 * listen to state_changed events to determine if the window was
585 * pinned or not. If trusted flag is non-zero, the app can prevent
586 * users from exiting the pinned mode.
587 */
588 void (*pin)(struct wl_client *client,
589 struct wl_resource *resource,
590 int32_t trusted);
591 /**
592 * unpin
593 *
594 * Request that surface is unpinned.
595 *
596 * This is only a request that the window should be unpinned. The
597 * compositor may choose to ignore this request. The client should
598 * listen to unset_pinned events to determine if the window was
599 * unpinned or not.
600 */
601 void (*unpin)(struct wl_client *client,
602 struct wl_resource *resource);
603 /**
604 * suggests a re-layout of remote shell input area
605 *
606 * Suggests a surface should become system modal.
607 */
608 void (*set_system_modal)(struct wl_client *client,
609 struct wl_resource *resource);
610 /**
611 * suggests a re-layout of remote shell input area
612 *
613 * Suggests a surface should become non system modal.
614 */
615 void (*unset_system_modal)(struct wl_client *client,
616 struct wl_resource *resource);
617 };
618
619 #define ZCR_REMOTE_SURFACE_V1_CLOSE 0
620 #define ZCR_REMOTE_SURFACE_V1_STATE_TYPE_CHANGED 1
621
622 /**
623 * @ingroup iface_zcr_remote_surface_v1
624 */
625 #define ZCR_REMOTE_SURFACE_V1_CLOSE_SINCE_VERSION 1
626 /**
627 * @ingroup iface_zcr_remote_surface_v1
628 */
629 #define ZCR_REMOTE_SURFACE_V1_STATE_TYPE_CHANGED_SINCE_VERSION 1
630
631 /**
632 * @ingroup iface_zcr_remote_surface_v1
633 * Sends an close event to the client owning the resource.
634 * @param resource_ The client's resource
635 */
636 static inline void
637 zcr_remote_surface_v1_send_close(struct wl_resource *resource_)
638 {
639 wl_resource_post_event(resource_, ZCR_REMOTE_SURFACE_V1_CLOSE);
640 }
641
642 /**
643 * @ingroup iface_zcr_remote_surface_v1
644 * Sends an state_type_changed event to the client owning the resource.
645 * @param resource_ The client's resource
646 */
647 static inline void
648 zcr_remote_surface_v1_send_state_type_changed(struct wl_resource *resource_, uin t32_t state_type)
649 {
650 wl_resource_post_event(resource_, ZCR_REMOTE_SURFACE_V1_STATE_TYPE_CHANG ED, state_type);
651 }
652
653 /**
654 * @ingroup iface_zcr_notification_surface_v1
655 * @struct zcr_notification_surface_v1_interface
656 */
657 struct zcr_notification_surface_v1_interface {
658 /**
659 * Destroy the notification_surface
660 *
661 * Unmap and destroy the notification surface.
662 */
663 void (*destroy)(struct wl_client *client,
664 struct wl_resource *resource);
665 };
666
667
140 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM 668 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM
141 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM 669 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM
142 /** 670 /**
143 * @ingroup iface_zwp_remote_shell_v1 671 * @ingroup iface_zwp_remote_shell_v1
144 * containers for remote surfaces 672 * containers for remote surfaces
145 * 673 *
146 * Determine how a remote surface should be stacked relative to other 674 * Determine how a remote surface should be stacked relative to other
147 * shell surfaces. 675 * shell surfaces.
148 */ 676 */
149 enum zwp_remote_shell_v1_container { 677 enum zwp_remote_shell_v1_container {
(...skipping 626 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 void (*destroy)(struct wl_client *client, 1304 void (*destroy)(struct wl_client *client,
777 struct wl_resource *resource); 1305 struct wl_resource *resource);
778 }; 1306 };
779 1307
780 1308
781 #ifdef __cplusplus 1309 #ifdef __cplusplus
782 } 1310 }
783 #endif 1311 #endif
784 1312
785 #endif 1313 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698