summaryrefslogtreecommitdiff
path: root/protocol
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2011-01-18 09:08:53 -0500
committerKristian Høgsberg <krh@bitplanet.net>2011-01-19 14:25:12 -0500
commitae6c8a6d731b3543bdea0f40757206908d75d6f4 (patch)
tree7bf76db46ca3af38ff1f1c88b869a039eaf93113 /protocol
parent4cca34934998eae779e0f2b33d751759407b51e4 (diff)
First attempt at selection support
Diffstat (limited to 'protocol')
-rw-r--r--protocol/wayland.xml51
1 files changed, 51 insertions, 0 deletions
diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 8799a64..75ccb5b 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -164,6 +164,10 @@
<arg name="id" type="new_id" interface="drag"/>
</request>
+ <request name="create_selection">
+ <arg name="id" type="new_id" interface="selection"/>
+ </request>
+
<!-- The configure event asks the client to resize its surface.
The size is a hint, in the sense that the client is free to
ignore it if it doesn't resize, pick a smaller size (to
@@ -179,6 +183,53 @@
</event>
</interface>
+ <interface name="selection" 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>
+
+ <!-- Can the selection be activated for multiple devices? -->
+ <request name="activate">
+ <arg name="input_device" type="object" interface="input_device"/>
+ <arg name="time" type="uint"/>
+ </request>
+
+ <!-- Destroy the selection. -->
+ <request name="destroy" type="destructor"/>
+
+ <!-- Another client pasted the selection, send the mime-type over
+ the passed fd. -->
+ <event name="send">
+ <arg name="mime_type" type="string"/>
+ <arg name="fd" type="fd"/>
+ </event>
+
+ <!-- Another selection became active. -->
+ <event name="cancelled"/>
+ </interface>
+
+ <interface name="selection_offer" version="1">
+ <!-- Called to receive the selection data as the specified type.
+ Sends the pipe fd to the compositor, which forwards it to the
+ source in the 'send' event -->
+ <request name="receive">
+ <arg name="mime_type" type="string"/>
+ <arg name="fd" type="fd"/>
+ </request>
+
+ <!-- Sent before the keyboard_focus event to announce the types
+ offered. One event per offered mime type. A mime type of
+ NULL means the selection offer is going away. -->
+ <event name="offer">
+ <arg name="type" type="string"/>
+ </event>
+
+ <event name="keyboard_focus">
+ <arg name="input_device" type="object" interface="input_device"/>
+ </event>
+ </interface>
<interface name="drag" version="1">
<!-- Add an offered mime type. Can be called several times to