Touch Arbitration not working for Lenovo 500e 2nd Gen Chromebook
Summary
When writing with a stylus on the touch screen (e.g. in Xournal++) of a Lenovo 500e 2nd Gen Chromebook, resting my hand on the screen can make the active window to scroll, zoom, and do other things, as if I would intentionally use touch gestures with my hand.
Steps to reproduce
- You need to have the same device as in the title
- Open a note taking app that supports pen input
- Start writing with the stylus. Do not try to avoid touching the touch screen with your hand. You may even move your hand around on it. A more reliable way to test would be to try pressing buttons on the touch screen with your other hand while the pen is down, as the system seems to have some kind of filtering for when a palm is resting on the touch screen.
- Observe non-pen touch input being acted upon besides the pen input
Required information
- libinput version: 1.22.1
- hardware information: Lenovo 500e 2nd Gen Chromebook
-
libinput record
output: attached (separate) recordings for both the stylus and the touch screen event sources -
libinput debug-events --verbose
: debug-events.log
Logs of udevadm -a -n input/eventX
for 2 Wacom devices and the Elan touch screen:
- udevadm-a-n-wacom-stylus: this emits the pen input events
- udevadm-a-n-wacom: I dont know what this is, I'm hoping either you know, or it may be useful in the future. Wasn't yet able to make it emit events, it might be for stylus buttons, but the stylus of this device does not have any.
- udevadm-a-n-elan: the touch screen.
As you will see, the Elan touch screen does not seem to have a real vendor and product id.
In my workaround for making touch arbitration work, I matched on the name
attribute, but this may not be what you want:
# /etc/udev/rules.d/80-touch-arbitration.rules
# Touch screen
SUBSYSTEMS=="input", ATTRS{name}=="Elan Touchscreen", ENV{LIBINPUT_DEVICE_GROUP}="f865e87b"
# Stylus touch events
SUBSYSTEMS=="input", ATTRS{id/vendor}=="2d1f", ATTRS{id/product}=="0078", ENV{LIBINPUT_DEVICE_GROUP}="f865e87b"