lkml.org 
[lkml]   [2021]   [Dec]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/1] Do not map BTN_RIGHT/MIDDLE on buttonpads
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@gmail.com> 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

\
 
 \ /
  Last update: 2021-12-01 06:57    [W:0.555 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site