[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] kbdif: Define "feature-raw-pointer" and "request-raw-pointer"



> -----Original Message-----
> From: Xen-devel [mailto:xen-devel-bounces@xxxxxxxxxxxxx] On Behalf Of
> Owen Smith
> Sent: 03 July 2017 13:58
> To: xen-devel@xxxxxxxxxxxxx
> Cc: andr2000@xxxxxxxxx; sstabellini@xxxxxxxxxx; Owen Smith
> <owen.smith@xxxxxxxxxx>
> Subject: [Xen-devel] [PATCH] kbdif: Define "feature-raw-pointer" and
> "request-raw-pointer"
> 
> Backends set "feature-raw-pointer" if its capable of reporting
> absolute positions without scaling the coordinates to screen
> size. This should be set during the backend init.
> Frontends set "request-raw-pointer" to request that backends
> do not rescale absolute coordinates to screen size, and the
> coordinates remain in the range [0, 0x7fff]. This request is
> only applicable if "request-abs-pointer" is also set. Frontends
> should set this value before setting Connected.
> 
> Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx>

This seems like an eminently sensible idea to me. The fact that it is not the 
default behaviour is shame, but that ship sailed long ago.

Reviewed-by: Paul Durrant <paul.durrant@xxxxxxxxxx>

> ---
> Adding this feature will help determine the difference between older
> backends and newer backends. In the case I'm interested in, the difference
> between old QEMU vkbd backend which blocks waiting for the vfb device,
> which
> is not present on HVM guests, and a newer QEMU backend that does not
> rely
> on display information to rescale axis values.
> 
>  xen/include/public/io/kbdif.h | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/xen/include/public/io/kbdif.h b/xen/include/public/io/kbdif.h
> index dcbd71a..3ce54e9 100644
> --- a/xen/include/public/io/kbdif.h
> +++ b/xen/include/public/io/kbdif.h
> @@ -63,6 +63,13 @@
>   *      Backends, which support reporting of multi-touch events
>   *      should set this to 1.
>   *
> + * feature-raw-pointer
> + *      Values:        <uint>
> + *
> + *      Backends, which support reporting raw (unscaled) absolute
> coordinates
> + *      for pointer devices should set this to 1. Raw (unscaled) values have
> + *      a range of [0, 0x7fff].
> + *
>   *------------------------- Pointer Device Parameters 
> ------------------------
>   *
>   * width
> @@ -98,6 +105,13 @@
>   *
>   *      Request backend to report multi-touch events.
>   *
> + * request-raw-pointer
> + *      Values:         <uint>
> + *
> + *      Request backend to report raw unscaled absolute pointer coordinates.
> + *      This option is only valid if request-abs-pointer is also set.
> + *      Raw unscaled coordinates have the range [0, 0x7fff]
> + *
>   *----------------------- Request Transport Parameters 
> -----------------------
>   *
>   * event-channel
> --
> 2.1.4
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> https://lists.xen.org/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.