[PATCH v2 krh/wayland/next] protocol: fix clarification of input region on drags and pointers

Pekka Paalanen ppaalanen at gmail.com
Thu Oct 11 03:58:45 PDT 2012


The previous clarification did not follow the current implementation in
Weston, where when a surface stops being a cursor or an icon, it becomes
a plain unmapped surface again.

Rewrite the related paragraphs, and fix some typos while at it.

For start drag, make it explicit of which surface argument we are
talking about.

v2:

Make the input region undefined when the use ends. Most likely no-one
will re-use these surfaces for anything else than the same use case, so
leave some slack for the implementations to avoid useless work on
resetting the regions.

Reported-by: Ander Conselvan de Oliveira <conselvan2 at gmail.com>
Signed-off-by: Pekka Paalanen <ppaalanen at gmail.com>
---
 protocol/wayland.xml |   18 +++++++++++-------
 1 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 1903d1c..275ea28 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -357,9 +357,11 @@
 	relative position. Attach requests must be confirmed with
 	wl_surface.commit as usual.
 
-	The current and pending input regions of the wl_surface are
+	The current and pending input regions of the icon wl_surface are
 	cleared, and wl_surface.set_input_region is ignored until the
-	wl_surface is destroyed.
+	wl_surface is no longer used as the icon surface. When the use
+	as an icon ends, the the current and pending input regions
+	become undefined, and the wl_surface is unmapped.
       </description>
       <arg name="source" type="object" interface="wl_data_source" allow-null="true"/>
       <arg name="origin" type="object" interface="wl_surface"/>
@@ -889,8 +891,8 @@
     <request name="set_cursor">
       <description summary="set the pointer surface">
 	Set the pointer surface, i.e., the surface that contains the
-	pointer image. This request only takes effect if the pointer
-	focus for this device is one of the requesting client surfaces
+	pointer image (cursor). This request only takes effect if the pointer
+	focus for this device is one of the requesting client's surfaces
 	or the surface parameter is the current pointer surface. If
 	there was a previous surface set with this request it is
 	replaced. If surface is NULL, the pointer image is hidden.
@@ -905,13 +907,15 @@
 	passed to the request. Attach must be confirmed by
 	wl_surface.commit as usual.
 
-	The hotspot can also be updated by passing the current set
+	The hotspot can also be updated by passing the currently set
 	pointer surface to this request with new values for hotspot_x
-	and/or hotspot_y.
+	and hotspot_y.
 
 	The current and pending input regions of the wl_surface are
 	cleared, and wl_surface.set_input_region is ignored until the
-	wl_surface is destroyed.
+	wl_surface is no longer used as the cursor. When the use as a
+	cursor ends, the current and pending input regions become
+	undefined, and the wl_surface is unmapped.
       </description>
 
       <arg name="serial" type="uint"/>
-- 
1.7.8.6



More information about the wayland-devel mailing list