|
|
|
<protocol name="wayland">
|
|
|
|
|
|
|
|
<interface name="display" version="1">
|
|
|
|
<request name="sync">
|
|
|
|
<arg name="key" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="frame">
|
|
|
|
<arg name="key" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<event name="invalid_object">
|
|
|
|
<arg name="object_id" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="invalid_method">
|
|
|
|
<arg name="object_id" type="uint"/>
|
|
|
|
<arg name="opcode" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="no_memory"/>
|
|
|
|
|
|
|
|
<event name="global">
|
|
|
|
<arg name="id" type="new_id" interface="object"/>
|
|
|
|
<arg name="name" type="string"/>
|
|
|
|
<arg name="version" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="range">
|
|
|
|
<arg name="base" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="sync">
|
|
|
|
<arg name="key" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="frame">
|
|
|
|
<arg name="key" type="uint"/>
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
</event>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="compositor" version="1">
|
|
|
|
<request name="create_surface">
|
|
|
|
<arg name="id" type="new_id" interface="surface"/>
|
|
|
|
</request>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="drm" version="1">
|
|
|
|
<!-- dri2 auth and create buffer -->
|
|
|
|
<request name="authenticate">
|
|
|
|
<arg name="id" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="create_buffer">
|
|
|
|
<arg name="id" type="new_id" interface="buffer"/>
|
|
|
|
<arg name="name" type="uint"/>
|
|
|
|
<arg name="width" type="int"/>
|
|
|
|
<arg name="height" type="int"/>
|
|
|
|
<arg name="stride" type="uint"/>
|
|
|
|
<arg name="visual" type="object" interface="visual"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<event name="device">
|
|
|
|
<arg name="name" type="string"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="authenticated"/>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="buffer" version="1">
|
|
|
|
<request name="destroy" type="destructor"/>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="shell" version="1">
|
|
|
|
<request name="move">
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="input_device" type="object" interface="input_device"/>
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="resize">
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="input_device" type="object" interface="input_device"/>
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<!-- edges is an enum, need to get the values in here -->
|
|
|
|
<arg name="edges" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="create_drag">
|
|
|
|
<arg name="id" type="new_id" interface="drag"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<event name="configure">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<!-- Same as edges except also move (16) -->
|
|
|
|
<arg name="type" type="uint"/>
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="width" type="int"/>
|
|
|
|
<arg name="height" type="int"/>
|
|
|
|
</event>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="drag" version="1">
|
|
|
|
<!-- Add an offered mime type. Can be called several times to
|
|
|
|
offer multiple types, but must be called before 'activate'. -->
|
|
|
|
<request name="offer">
|
|
|
|
<arg name="type" type="string"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="activate">
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="input_device" type="object" interface="input_device"/>
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<!-- Destroy the drag and cancel the session. -->
|
|
|
|
<request name="destroy" type="destructor"/>
|
|
|
|
|
|
|
|
<!-- Sent when a target accepts pointer_focus or motion events.
|
|
|
|
If a target does not accept any of the offered types, type is
|
|
|
|
NULL -->
|
|
|
|
<event name="target">
|
|
|
|
<arg name="mime_type" type="string"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<!-- Sent when the drag is finished. The final mime type is that
|
|
|
|
of the last target event. If that was NULL, no drag target
|
|
|
|
was valid when the drag finished, fd is undefined and the
|
|
|
|
source should not send data. The event is also sent in case
|
|
|
|
a drag source tries to activate a drag after the grab was
|
|
|
|
released, in which case mime_type will also be NULL. -->
|
|
|
|
<event name="finish">
|
|
|
|
<arg name="fd" type="fd"/>
|
|
|
|
</event>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
|
|
|
|
<interface name="drag_offer" version="1">
|
|
|
|
<!-- Call to accept the offer of the given type -->
|
|
|
|
<request name="accept">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="type" type="string"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<!-- Called to initiate the drag finish sequence. Sends the pipe
|
|
|
|
fd to the compositor, which forwards it to the source in the
|
|
|
|
'finish' event -->
|
|
|
|
<request name="receive">
|
|
|
|
<arg name="fd" type="fd"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<!-- Sent before the pointer_focus event to announce the types
|
|
|
|
offered. One event per offered mime type. -->
|
|
|
|
<event name="offer">
|
|
|
|
<arg name="type" type="string"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<!-- Similar to device::pointer_focus. Sent to potential target
|
|
|
|
surfaces to offer drag data. If the device leaves the
|
|
|
|
window, the drag stops or the originator cancels the drag,
|
|
|
|
this event is sent with the NULL surface, at which point the
|
|
|
|
drag object may no longer be valid. -->
|
|
|
|
<event name="pointer_focus">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="surface_x" type="int"/>
|
|
|
|
<arg name="surface_y" type="int"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<!-- Similar to device::motion. Sent to potential target surfaces
|
|
|
|
as the drag pointer moves around in the surface. -->
|
|
|
|
<event name="motion">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="surface_x" type="int"/>
|
|
|
|
<arg name="surface_y" type="int"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<!-- Sent to indicate that the drag is finishing. The last
|
|
|
|
motion/pointer_focus event gives the location of the drop.
|
|
|
|
Target must respond with the 'receive' request, which sends
|
|
|
|
an fd to the source for writing the drag data. -->
|
|
|
|
<event name="drop"/>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="surface" version="1">
|
|
|
|
<request name="destroy" type="destructor"/>
|
|
|
|
|
|
|
|
<request name="attach">
|
|
|
|
<arg name="buffer" type="object" interface="buffer"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="map">
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="width" type="int"/>
|
|
|
|
<arg name="height" type="int"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<request name="damage">
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="width" type="int"/>
|
|
|
|
<arg name="height" type="int"/>
|
|
|
|
</request>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="input_device" version="1">
|
|
|
|
<request name="attach">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="buffer" type="object" interface="buffer"/>
|
|
|
|
<arg name="hotspot_x" type="int"/>
|
|
|
|
<arg name="hotspot_y" type="int"/>
|
|
|
|
</request>
|
|
|
|
|
|
|
|
<event name="motion">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="surface_x" type="int"/>
|
|
|
|
<arg name="surface_y" type="int"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="button">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="button" type="uint"/>
|
|
|
|
<arg name="state" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="key">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="key" type="uint"/>
|
|
|
|
<arg name="state" type="uint"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="pointer_focus">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="x" type="int"/>
|
|
|
|
<arg name="y" type="int"/>
|
|
|
|
<arg name="surface_x" type="int"/>
|
|
|
|
<arg name="surface_y" type="int"/>
|
|
|
|
</event>
|
|
|
|
|
|
|
|
<event name="keyboard_focus">
|
|
|
|
<arg name="time" type="uint"/>
|
|
|
|
<arg name="surface" type="object" interface="surface"/>
|
|
|
|
<arg name="keys" type="array"/>
|
|
|
|
</event>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="output" version="1">
|
|
|
|
<event name="geometry">
|
|
|
|
<arg name="width" type="int"/>
|
|
|
|
<arg name="height" type="int"/>
|
|
|
|
</event>
|
|
|
|
</interface>
|
|
|
|
|
|
|
|
<interface name="visual" version="1">
|
|
|
|
|
|
|
|
</protocol>
|