diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 31d7ce88..2417c0ea 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -348,22 +348,26 @@
-
- Indicate that the client can accept the given mime-type, or
- NULL for not accepted. Use for feedback during drag and drop.
+
+ Indicate that the client can accept the given mime type, or
+ NULL for not accepted.
+
+ Used for feedback during drag-and-drop.
-
+
To transfer the offered data, the client issues this request
- and indicates the mime-type it wants to receive. The transfer
- happens through the passed fd (typically a pipe(7) file
- descriptor). The source client writes the data in the
- mime-type representation requested and then closes the fd.
+ and indicates the mime type it wants to receive. The transfer
+ happens through the passed file descriptor (typically created
+ with the pipe system call). The source client writes the data
+ in the mime type representation requested and then closes the
+ file descriptor.
+
The receiving client reads from the read end of the pipe until
EOF and the closes its end, at which point the transfer is
complete.
@@ -372,15 +376,19 @@
-
+
+
+ Destroy the data offer.
+
+
-
+
Sent immediately after creating the wl_data_offer object. One
event per offered mime type.
-
+
@@ -394,11 +402,11 @@
- This request adds a mime-type to the set of mime-types
+ This request adds a mime type to the set of mime types
advertised to targets. Can be called several times to offer
multiple types.
-
+
@@ -408,9 +416,11 @@
-
+
Sent when a target accepts pointer_focus or motion events. If
a target does not accept any of the offered types, type is NULL.
+
+ Used for feedback during drag-and-drop.
@@ -418,8 +428,9 @@
- Request for data from another client. Send the data as the
- specified mime-type over the passed fd, then close the fd.
+ Request for data from the client. Send the data as the
+ specified mime type over the passed file descriptor, then
+ close it.
@@ -436,9 +447,16 @@
+
+ There is one wl_data_device per seat which can be obtained
+ from the global wl_data_device_manager singleton.
+
+ A wl_data_device provides access to inter-client data transfer
+ mechanisms such as copy-and-paste and drag-and-drop.
+
-
- This request asks the compositor to start a drag and drop
+
+ This request asks the compositor to start a drag-and-drop
operation on behalf of the client.
The source argument is the data source that provides the data
@@ -451,7 +469,7 @@
the client must have an active implicit grab that matches the
serial.
- The icon surface is an optional (can be nil) surface that
+ The icon surface is an optional (can be NULL) surface that
provides an icon to be moved around with the cursor. Initially,
the top-left corner of the icon surface is placed at the cursor
hotspot, but subsequent wl_surface.attach request can move the
@@ -467,33 +485,39 @@
-
+
+
+ This request asks the compositor to set the selection
+ to the data from the source on behalf of the client.
+
+ To unset the selection, set the source to NULL.
+
-
+
The data_offer event introduces a new wl_data_offer object,
which will subsequently be used in either the
- data_device.enter event (for drag and drop) or the
+ data_device.enter event (for drag-and-drop) or the
data_device.selection event (for selections). Immediately
following the data_device_data_offer event, the new data_offer
object will send out data_offer.offer events to describe the
- mime-types it offers.
+ mime types it offers.
-
+
This event is sent when an active drag-and-drop pointer enters
a surface owned by the client. The position of the pointer at
- enter time is provided by the @x an @y arguments, in surface
+ enter time is provided by the x an y arguments, in surface
local coordinates.
@@ -505,7 +529,7 @@
-
+
This event is sent when the drag-and-drop pointer leaves the
surface and the session ends. The client must destroy the
wl_data_offer introduced at enter time at this point.
@@ -513,10 +537,10 @@
-
+
This event is sent when the drag-and-drop pointer moves within
the currently focused surface. The new position of the pointer
- is provided by the @x an @y arguments, in surface local
+ is provided by the x an y arguments, in surface local
coordinates.
@@ -524,7 +548,12 @@
-
+
+
+ The event is sent when a drag-and-drop operation is ended
+ because the implicit grab is removed.
+
+
@@ -546,16 +575,22 @@
The wl_data_device_manager is a a singleton global object that
provides access to inter-client data transfer mechanisms such as
- copy and paste and drag and drop. These mechanisms are tied to
+ copy-and-paste and drag-and-drop. These mechanisms are tied to
a wl_seat and this interface lets a client get a wl_data_device
corresponding to a wl_seat.
+
+ Create a new data source.
+
+
+ Create a new data device for a given seat.
+