cursor-shape-v1: Make object inert when underlying cap is destroyed

It was undefined before how long the wp_cursor_shape_device_v1 has any
effect. Let's specify that the object becomes inert when the pointer cap
goes away or the tablet tool is removed. In those cases the client has
to create a new pointer/tablet tool, and also a new cursor shape device
when the cursor caps or a new tablet tool reappears.

Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com>
Closes: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/186
This commit is contained in:
Sebastian Wick 2024-03-27 14:03:17 +01:00 committed by Simon Ser
parent c997223583
commit 02c589c2d8

View file

@ -43,6 +43,9 @@
<request name="get_pointer"> <request name="get_pointer">
<description summary="manage the cursor shape of a pointer device"> <description summary="manage the cursor shape of a pointer device">
Obtain a wp_cursor_shape_device_v1 for a wl_pointer object. Obtain a wp_cursor_shape_device_v1 for a wl_pointer object.
When the pointer capability is removed from the wl_seat, the
wp_cursor_shape_device_v1 object becomes inert.
</description> </description>
<arg name="cursor_shape_device" type="new_id" interface="wp_cursor_shape_device_v1"/> <arg name="cursor_shape_device" type="new_id" interface="wp_cursor_shape_device_v1"/>
<arg name="pointer" type="object" interface="wl_pointer"/> <arg name="pointer" type="object" interface="wl_pointer"/>
@ -51,6 +54,9 @@
<request name="get_tablet_tool_v2"> <request name="get_tablet_tool_v2">
<description summary="manage the cursor shape of a tablet tool device"> <description summary="manage the cursor shape of a tablet tool device">
Obtain a wp_cursor_shape_device_v1 for a zwp_tablet_tool_v2 object. Obtain a wp_cursor_shape_device_v1 for a zwp_tablet_tool_v2 object.
When the zwp_tablet_tool_v2 is removed, the wp_cursor_shape_device_v1
object becomes inert.
</description> </description>
<arg name="cursor_shape_device" type="new_id" interface="wp_cursor_shape_device_v1"/> <arg name="cursor_shape_device" type="new_id" interface="wp_cursor_shape_device_v1"/>
<arg name="tablet_tool" type="object" interface="zwp_tablet_tool_v2"/> <arg name="tablet_tool" type="object" interface="zwp_tablet_tool_v2"/>