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

Kristian Høgsberg hoegsberg at gmail.com
Thu Oct 11 06:45:40 PDT 2012


On Thu, Oct 11, 2012 at 01:58:45PM +0300, Pekka Paalanen wrote:
> 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.

Yup, that all makes sense.

Kristian

> 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