Wacom tablet tip pressure feel preference applied to eraser
Affected version
- Arch Linux
- GNOME 40.2.0
- mutter-40.3-1
- Xorg desktop (Wayland untested)
Bug summary
When adjusting the pressure feel of the tip and eraser of a Wacom stylus, Mutter applies the wrong setting to the eraser. Changing the tip and eraser feel correctly update the pressure-curve
and eraser-pressure-curve
settings in dconf, but something goes wrong when Mutter acts on those settings. Rather than applying the eraser-pressure-curve
setting to the eraser, the pressure-curve
setting gets applied instead.
Steps to reproduce
- Connect a Wacom tablet to system
- Log in to an Xorg session
- Open the Wacom Tablet properties in the GNOME Control Center
- Adjust the tip pressure feel to any value
- Adjust the eraser pressure feel to any different value
- Bring the pen tip into prox so Mutter will apply its settings
- Bring the eraser tip into prox so Mutter will apply its settings
- Run
xsetwacom list
and note the ID numbers for both the stylus and eraser - Run
xsetwacom get <stylus-id> pressurecurve
to get the actual pressure curve of the stylus - Run
xsetwacom get <eraser-id> pressurecurve
to get the actual pressure curve of the eraser - Observe the eraser pressure curve is incorrectly set to the stylus pressure curve
- Repeat from step 4 to try other permutations
What happened
The pressure curve for the eraser is set to the values set for the stylus.
What did you expect to happen
The pressure curve for the eraser should be set to the values set for the eraser.
Relevant logs, screenshots, screencasts etc.
- pressure-feel-bug-2021-07-15_14.25.17.mkv: I adjust the tip pressure feel with my stylus so Mutter will apply its settings in real-time. The dconf and terminal windows show the expected pressure curves are set for the stylus tool. I switch to my eraser and Mutter immediately applies the stylus pressure feel to it (as observed by the terminal output). Adjusting the eraser pressure feel with the eraser (again, so Mutter will apply its settings in real-time) shows correct behavior in dconf, but no changes in the terminal.