On Wed, Nov 24, 2021 at 10:39:02AM +0100, Benjamin Tissoires wrote: > Hi José, > > On Tue, Nov 23, 2021 at 8:12 PM José Expósito <jose.exposito89@xxxxxxxxx> wrote: > > > > Hi all, > > > > Historically, libinput has relayed on the INPUT_PROP_BUTTONPAD property > > to detect buttonpads. > > > > Since buttonpads are expected to have only one button (BTN_LEFT), > > recently we added a new rule to detect buttonpads: Where a touchpad > > maps the BTN_RIGHT bit, libinput assumes it is NOT a buttonpad. > > > > However, this change leaded to several false possitives, so we ended up > > reverting it. For more context: > > https://gitlab.freedesktop.org/libinput/libinput/-/issues/704 > > > > And for a full list of affected hardware, HID reports and bug reports > > please see: > > https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/726 > > > > My understanding is that buttonpads should not map BTN_RIGHT and/or > > BTN_MIDDLE and to avoid it I would like to fix the required drivers. > > As long as udev intrinsic is happy with it (and it correctly tags the > touchpad as ID_INPUT_something), I'm fine with it. fwiw, udev's builtin input-id touchpad check is ABS_X && ABS_Y && BTN_TOOL_FINGER && !BTN_TOOL_PEN && !INPUT_PROP_DIRECT it doesn't care about the actual buttons so this patch wouldn't affect it. > Also, you might want to point at the specification regarding button > pads: https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/touchpad-windows-precision-touchpad-collection#device-capabilities-feature-report > > The way I read it: if the device exports the Button type value > feature, and it is 0 or 1 (click-pad or pressure-pad), there should > not be discrete buttons. Yeah, it sounds like there *should* not be any buttons but There is nothing to explicitly forbid extra buttons for click/pressurepads which is probably how those devices get past the windows driver implementation. Cheers, Peter