tablet: add support for relative dials
Some tablets provide one or more rotary controls (see e.g. the Huion Inspiroy Dial 2) that provide delta information effectively equivalent to a mouse wheel. Expose those in the same way as the strip or ring controls, with the event matching the wl_pointer.axis_v120 approach.
Like a typical mouse wheel we do not expect there to be a source information, so this is left out of the interface.
This are the two easy parts of !285 factored out, scrolling is a whole different beast.
Implementations:
ACKS:
-
KDE (@zzag) -
GNOME (@jadahl) -
wlroots (@bl4ckb0ne)
Review:
Merge request reports
Activity
mentioned in merge request !285
added 12 commits
-
78662cab...e3c6a17a - 9 commits from branch
wayland:main
- a78e82f2 - tablet: bump the tablet protocol version
- 34f50cfb - tablet: add a bustype event to the initial burst of tablet events
- 7865890c - tablet: add support for relative dials
Toggle commit list-
78662cab...e3c6a17a - 9 commits from branch
added Needs acks Needs implementations Needs review labels
- Resolved by Peter Hutterer
- Resolved by Peter Hutterer
- Resolved by Peter Hutterer
Note that I'm adding preliminary support for this in KWin with https://invent.kde.org/plasma/kwin/-/merge_requests/3512, I haven't added support for this addition to the protocol yet but it would be trivial.
Edited by Joshua Goinsadded 49 commits
-
6154479a...122a47a1 - 46 commits from branch
wayland:main
- 9243d58b - tablet: bump the tablet protocol version
- e4d5414a - tablet: add a bustype event to the initial burst of tablet events
- 14bc4a73 - tablet: add support for relative dials
Toggle commit list-
6154479a...122a47a1 - 46 commits from branch
- Resolved by Peter Hutterer
Partial KWin implementation (only the bus type): https://invent.kde.org/plasma/kwin/-/merge_requests/6950
I also typed up a trivial Qt implementation, but it doesn't actually do anything with the information, so I'm not sure it counts
Edited by Nicolas FellaFull KWin implementation: https://invent.kde.org/plasma/kwin/-/merge_requests/7348
- Resolved by Peter Hutterer
- Resolved by Peter Hutterer
- Resolved by Simon Zeni