"README.rst" did not exist on "2d2f1fd164218eacf2b142bc808be1f25f66e72c"
touchpad: don't tap for 2fg down, followed by a single finger up
The following sequence currently generates a right-button event: finger 1 down finger 2 down finger 1 up finger 2 held down This is easily triggered with short scroll events. There are two issues here: first is that the tapping code elsewhere treats any tap with a second finger down as a left-button tap, not a right button one. So if anything, we should generate a left button click here, not a right button click. Arguably, generating a button click here is wrong though, it's not a very well defined sequence and relatively difficult to trigger intentionally. So the best solution here is to simply ignore the release event and move straight back to state HOLD - unless the second finger is released within the timeout. If the finger is set down again during the timeout, we move straight to TOUCH_2_HOLD - this could eventually be interpreted as a tap, but not for now. Signed-off-by:Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by:
Hans de Goede <hdegoede@redhat.com>
Showing
- doc/touchpad-tap-state-machine.svg 158 additions, 96 deletionsdoc/touchpad-tap-state-machine.svg
- src/evdev-mt-touchpad-tap.c 35 additions, 6 deletionssrc/evdev-mt-touchpad-tap.c
- src/evdev-mt-touchpad.h 1 addition, 0 deletionssrc/evdev-mt-touchpad.h
- test/touchpad-tap.c 46 additions, 0 deletionstest/touchpad-tap.c
Loading
Please register or sign in to comment