53
53
<arg name="version" type="uint"/>
56
<!-- Notify the client of removed global objects. -->
57
<event name="global_remove">
58
<arg name="id" type="uint" />
56
61
<!-- Internal, deprecated, and will be changed. This is an object
57
62
IDs range that is used by the client to allocate object IDs
58
63
in "new_id" type arguments. The server sends range
140
145
<!-- Destroy a buffer. This will invalidate the object id. -->
141
146
<request name="destroy" type="destructor"/>
148
<!-- Sent when an attached buffer is no longer used by the compositor. -->
149
<event name="release"/>
144
152
<interface name="wl_shell" version="1">
176
184
<arg name="id" type="new_id" interface="wl_selection"/>
187
<!-- Make the surface visible as a toplevel window. -->
188
<request name="set_toplevel">
189
<arg name="surface" type="object" interface="wl_surface"/>
192
<!-- Map the surface relative to an existing surface. The x and y
193
arguments specify the locations of the upper left corner of
194
the surface relative to the upper left corner of the parent
195
surface. The flags argument controls overflow/clipping
196
behaviour when the surface would intersect a screen edge,
197
panel or such. And possibly whether the offset only
198
determines the initial position or if the surface is locked
199
to that relative position during moves. -->
200
<request name="set_transient">
201
<arg name="surface" type="object" interface="wl_surface"/>
202
<arg name="parent" type="object" interface="wl_surface"/>
203
<arg name="x" type="int"/>
204
<arg name="y" type="int"/>
205
<arg name="flags" type="uint"/>
208
<!-- Map the surface as a fullscreen surface. There are a number
209
of options here: on which output? if the surface size doesn't
210
match the output size, do we scale, change resolution, or add
211
black borders? is that something the client controls? what
212
about transient surfaces, do they float on top of the
213
fullscreen? what if there's already a fullscreen surface on
214
the output, maybe you can only go fullscreen if you're
216
<request name="set_fullscreen">
217
<arg name="surface" type="object" interface="wl_surface"/>
179
220
<!-- The configure event asks the client to resize its surface.
180
221
The size is a hint, in the sense that the client is free to
181
222
ignore it if it doesn't resize, pick a smaller size (to
346
387
<arg name="y" type="int"/>
349
<!-- Make the surface visible as a toplevel window. -->
350
<request name="map_toplevel"/>
352
<!-- Map the surface relative to an existing surface. The x and y
353
arguments specify the locations of the upper left corner of
354
the surface relative to the upper left corner of the parent
355
surface. The flags argument controls overflow/clipping
356
behaviour when the surface would intersect a screen edge,
357
panel or such. And possibly whether the offset only
358
determines the initial position or if the surface is locked
359
to that relative position during moves. -->
360
<request name="map_transient">
361
<arg name="parent" type="object" interface="wl_surface"/>
362
<arg name="x" type="int"/>
363
<arg name="y" type="int"/>
364
<arg name="flags" type="uint"/>
367
<!-- Map the surface as a fullscreen surface. There are a number
368
of options here: on which output? if the surface size doesn't
369
match the output size, do we scale, change resolution, or add
370
black borders? is that something the client controls? what
371
about transient surfaces, do they float on top of the
372
fullscreen? what if there's already a fullscreen surface on
373
the output, maybe you can only go fullscreen if you're
375
<request name="map_fullscreen"/>
377
390
<!-- After attaching a new buffer, this request is used to
378
391
describe the regions where the new buffer is different from
379
392
the previous buffer and needs to be repainted. Coordinates
448
461
<arg name="surface" type="object" interface="wl_surface"/>
449
462
<arg name="keys" type="array"/>
465
<event name="touch_down">
466
<arg name="time" type="uint"/>
467
<arg name="id" type="int" />
468
<arg name="x" type="int" />
469
<arg name="y" type="int" />
472
<event name="touch_up">
473
<arg name="time" type="uint"/>
474
<arg name="id" type="int" />
477
<event name="touch_motion">
478
<arg name="time" type="uint"/>
479
<arg name="id" type="int" />
480
<arg name="x" type="int" />
481
<arg name="y" type="int" />
484
<!-- Indicates the end of a contact point list. -->
485
<event name="touch_frame"/>
487
<!-- Sent if the compositor decides the touch stream is a global
488
gesture. No further events are sent to the clients from that
489
particular gesture. -->
490
<event name="touch_cancel"/>
459
499
published as global during start up, or when a screen is hot
461
501
<interface name="wl_output" version="1">
462
<!-- Notification about the screen size. -->
503
<enum name="subpixel">
504
<entry name="unknown" value="0"/>
505
<entry name="none" value="1"/>
506
<entry name="horizontal_rgb" value="2"/>
507
<entry name="horizontal_bgr" value="3"/>
508
<entry name="vertical_rgb" value="4"/>
509
<entry name="vertical_bgr" value="5"/>
463
512
<event name="geometry">
464
513
<arg name="x" type="int"/>
465
514
<arg name="y" type="int"/>
515
<arg name="physical_width" type="int"/>
516
<arg name="physical_height" type="int"/>
517
<arg name="subpixel" type="int"/>
518
<arg name="make" type="string"/>
519
<arg name="model" type="string"/>
522
<!-- Values for the flags bitfield of the mode event. -->
524
<entry name="current" value="0x1"/>
525
<entry name="preferred" value="0x2"/>
529
<arg name="flags" type="uint"/>
466
530
<arg name="width" type="int"/>
467
531
<arg name="height" type="int"/>
532
<arg name="refresh" type="int"/>