linuxwacom / input-wacom

Linux kernel driver for Wacom devices
GNU General Public License v2.0
611 stars 58 forks source link

XP-Pen Deco Pro M orientation on Wayland #398

Closed zoqaeski closed 9 months ago

zoqaeski commented 10 months ago

The XP-Pen Deco Pro M defaults to a vertical orientation, with the buttons and wheel at the top. There is no way to rotate it in either libinput or the GNOME settings dialog on Wayland. On X11, I used to be able to manually override it with xsetwacom, but this functionality seems to be entirely missing in Wayland. There's no configuration files or utilities separate to the desktop settings application at all, and this device is designed to be used in a variety of orientations.

I'm also left-handed, so I would want it to be rotated clockwise with the buttons and wheel on the right, but most (right-handed) people would probably want it rotated counter-clockwise with the buttons on the left.

Distribution: Arch Linux, GNOME/Wayland Device: XP-Pen Deco Pro M and Deco Pro MW

jigpu commented 9 months ago

I'm going to close the issue here, but this should be taken up at the following bug trackers:

libinput is very restrictive in the kinds of configuration options that it will add, so I'm not sure if you'll get too far over there. It and GNOME both very heavily prefer to have "sensible defaults" and only provide options when absolutely necessary. You can ask for a rotation control but I don't think it will get too far.

If adding a rotation control gets nowhere, you might consider bringing up the idea of "auto-rotation" to libinput and GNOME instead. That is, GNOME could auto-rotate a tablet to match the orientation of the area it is mapped to. If the tablet is mapped to an area wider than it is tall, it would rotate the tablet (if necessary) so that it is usable in a (left- or right- handed, as defined by user preference) landscape orientation. And if the tablet is mapped to an area taller than it is wide, it would also rotate (if necessary) to a sensible portrait orientation.