Hello, As some of you may be aware, I've been working with Carlos Garnacho in order to implement support in GTK+ for the current draft protocol for using tablets on Wayland. You can find the latest preview branch of weston, modified to work with this protocol, here: https://github.com/Lyude/weston And you can find the WIP branch for GTK+ support here: https://github.com/Lyude/gtk- So, right now we've run into something that we believe needs some more discussion in terms of how it will be implemented: handling tablet buttons in GTK+ with the Wayland backend. Right now, the tablet-support branch of libinput only supports the buttons on the actual styluses for the tablet, not the buttons on the tablet pad, so we only need to worry about those for the time being. The problem is right now with the X11 backend is that these buttons aren't exactly handled in an ideal manner. On the average GNOME setup, gnome-settings-daemon tells xf86-input-wacom which mouse buttons each button on the tablet tool should be mapped to (for example: button #1 on the stylus may be mapped to a right click, and button #2 may be mapped to a left click), and X forwards them to the clients as such. This means that GDK only knows which emulated mouse buttons are being pressed as opposed to the actual tablet tool buttons, and only forwards what it gets from the xf86-input-wacom. So, there isn't even actually any infrastructure in GDK right now to handle actual tablet tool button presses, just mouse button presses. This leaves us with an issue, since the libinput API for tablets doesn't do any such emulation, and there's no emulation for this in the Wayland protocol (and I think it would be a good idea not to add any, IMO any emulation of this manner should be handled by the clients, not the compositor). Since there's quite a few ways to go about it, me and Carlos thought it would be appropriate to bring this up on the mailing list. Let me know what your ideas are. Cheers, Lyude AKA Stephen Chandler Paul
Attachment:
signature.asc
Description: This is a digitally signed message part