Red Hat Bugzilla – Bug 1528356
No way of mapping buttons on Wacom tablet
Last modified: 2018-05-17 10:39:45 EDT
Description of problem: There is no way to map buttons within the settings app on (so far) the Intuos 5 (056a:0027). I am assuming this issue effects other tablets as well. Also, no LED mode switching either. How reproducible: 100% Steps to Reproduce: 1. Plug in tablet with pad buttons. 2. Open Wacom settings, click "Tablet" at the top. 3. Observe no button mapping options. Actual results: No button mapping ability or LED mode switching. Expected results: Button mapping and LED mode switching. Additional info: I will add more tablets that share this issue as I test them.
confirmed with an Intuos4 and control-center-3.26.2-2.el7.x86_64, but this is a control-center bug, punting to Carlos. After a bit of hacking around in the source, I've confirmed that: update_current_page() - tablet->pad is set but tablet->stylus is always NULL. This causes the next loop to hit the if (tablet->stylus == NULL) { ... continue; } branch and exit early, the tablet page is thus never really set up. I suspect what's displayed is simply the default from the .ui file. add_known_devices() only seems to be triggered for the pad device, the stylus devices are listed from elsewhere. And the reason for this is that in panels/common/gsd-device-manager-x11.c:add_device, the device node is used as hashtable key. For RHEL7.x kernels, the pad still sits on the same evdev node as the stylus, the split happened later (3.14 or so). The wacom xorg driver initializes the stylus first so that's the one we get first here too. It gets added, the pad initializes second and the stylus is overwritten in the hashtable because it has the same event node. As a result, the stylus is not available in the device-manager devices list and the above effects take effect, the UI doesn't get initialized correctly.
Button mapping through the GUI is now working on all newest versions of mutter, gnome-shell and control-center.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:0770