On Tue, Feb 08, 2022 at 06:48:06PM +0100, José Expósito wrote: > Buttonpads are expected to map the INPUT_PROP_BUTTONPAD property bit > and the BTN_LEFT key bit. > > As explained in the specification, where a device has a button type > value of 0 (click-pad) or 1 (pressure-pad) there should not be > discrete buttons: > https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/touchpad-windows-precision-touchpad-collection#device-capabilities-feature-report > > However, some drivers map the BTN_RIGHT and/or BTN_MIDDLE key bits even > though the device is a buttonpad and therefore does not have those > buttons. > > This behavior has forced userspace applications like libinput to > implement different workarounds and quirks to detect buttonpads and > offer to the user the right set of features and configuration options. > For more information: > https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/726 > > In order to avoid this issue clear the BTN_RIGHT and BTN_MIDDLE key > bits when the input device is register if the INPUT_PROP_BUTTONPAD > property bit is set. > > Notice that this change will not affect udev because it does not check > for buttons. See systemd/src/udev/udev-builtin-input_id.c. > > List of known affected hardware: > > - Chuwi AeroBook Plus > - Chuwi Gemibook > - Framework Laptop > - GPD Win Max > - Huawei MateBook 2020 > - Prestigio Smartbook 141 C2 > - Purism Librem 14v1 > - StarLite Mk II - AMI firmware > - StarLite Mk II - Coreboot firmware > - StarLite Mk III - AMI firmware > - StarLite Mk III - Coreboot firmware > - StarLabTop Mk IV - AMI firmware > - StarLabTop Mk IV - Coreboot firmware > - StarBook Mk V > > Acked-by: Peter Hutterer <peter.hutterer@xxxxxxxxx> > Acked-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx> > Acked-by: Jiri Kosina <jkosina@xxxxxxx> > Signed-off-by: José Expósito <jose.exposito89@xxxxxxxxx> > Applied, thank you. -- Dmitry