[Spice-devel] [PATCH spice-protocol v2 4/4] Add support for setting cursor shape from guest

Frediano Ziglio fziglio at redhat.com
Thu Aug 10 19:56:05 UTC 2017


> 
> This allows to better support client mouse using streaming device
> 
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>  spice/stream-device.h | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
> 
> diff --git a/spice/stream-device.h b/spice/stream-device.h
> index 4a16b12..df4f22d 100644
> --- a/spice/stream-device.h
> +++ b/spice/stream-device.h
> @@ -85,6 +85,8 @@ typedef enum StreamDevType {
>      STREAM_TYPE_START_STOP,
>      /* server notify errors to guest */
>      STREAM_TYPE_NOTIFY_ERROR,
> +    /* guest cursor */
> +    STREAM_TYPE_CURSOR_SET,
>  } StreamDevType;
>  
>  /* Generic extension capabilities.
> @@ -164,4 +166,29 @@ typedef struct StreamMsgNotifyError {
>      uint8_t msg[0];
>  } StreamMsgNotifyError;
>  
> +/* Guest cursor.
> + * This message is sent by the guest to the host.
> + *
> + * States allowed: Streaming
> + */
> +typedef struct StreamMsgCursorSet {
> +    /* basic cursor information */
> +    uint16_t width;
> +    uint16_t height;
> +    uint16_t hot_spot_x;
> +    uint16_t hot_spot_y;
> +    /* Cursor type, as defined by SpiceCursorType.
> +     * Only ALPHA, COLOR24 and COLOR32 are allowed by this protocol
> +     */
> +    uint8_t type;
> +
> +    uint16_t padding1[3];
> +

this, according to documentation should be uint8_t
(fixed in my version)

> +    /* cursor data.
> +     * Format and size depends on cursor_header type and size
> +     */
> +    uint8_t data[0];
> +} StreamMsgCursorSet;
> +
> +
>  #endif /* SPICE_STREAM_DEVICE_H_ */

Frediano


More information about the Spice-devel mailing list