Description
This is somewhat a regression that happened due to #4306.
Previously, XWayland would make use of this tablet-unstable-v2
API and expose it as a "normal" xcursor, to provide compatibility for X applications written with xf86-input-wacom in mind. This worked for SDL with X videodriver, too, since that was just the "normal" xcursor, and the special digitizer data (pressure, tilt, etc) was seperate.
However with the switch to Wayland by default, I've noticed my tablet not working anymore in osu!lazer because GNOMEs Mutter compositor only exposes pen tablets under this separate tablet-unstable-v2
API (wlroots/sway still works, they probably don't or just for applications also supporting it).
I've already tried hacking a (somewhat working) tablet-unstable-v2 support together: sp1ritCS@fd2edf0
Because sdl doesn't have a native "tablet/pen input" interface, I made it send absolute mouse input events instead.
but it's still far from ready (and since I've never written SDL code before, I doubt it meets your quality expectations 🙃 ):
- some kind of cursor graphic to highlight the position of the pen for applications not implementing a custom cursor thingy
- on applications utilizing a hardware cursor: the hardware cursor is locked to the mouse pointer (obviously), however when one moves the pen over the surface and then clicks the mouse (without moving it), one can trigger a click event at the position of the pen, even tho the hw cursor of the mouse is located somewhere else.
- one cannot trigger the libdecoration events (close/max/min & resize) with a pen (but that also doesn't work with touch)
all of those are irrelevant to osu!lazer (since it's fullscreen and has a custom cursor thingy), but they are clearly noticeable in other applications, like the sdl2-demo I've been testing against.