Elantech: If two-fingers tap is set to middle-click and scrolling is set to 'two-fingers', sometimes middle-click and scrolling are triggered at the same time
Hi
My laptop is Lenovo G400S Touch.
I use two-fingers tap to middle-click because I frequently open links in a background tab
in my internet browser with it. Sometimes when I tap links with two-fingers, the webpage unexpectedly
scrolls a few pixels. Today I noticed another problem. KDE Plasma DE has an applet in system tray used to
pause/resume media playback with middle-click on it and adjust the volume of the used player
by scrolling while I hover over it. On my system, sometimes the media pauses/resumes and the volume is
adjusted at the same time when I middle-click with two-fingers tap on this applet. I have reported this
behavior on KDE bug tracker:
https://bugs.kde.org/show_bug.cgi?id=450079
I can reproduce these behaviors on a distribution based on Ubuntu 20.04 called neon unstable running libinput o1.19.3-1+20.04+focal+unstable+build4 on Wayland.
The bug with internet browser also occurs on Arch Linux running Wayland session of Gnome 41.3 and libinput 1.19.3-2.
Touchpad settings:
Tap to click is enabled
Tap with two fingers is set to middle-click
Tap and drag is enabled
Pointer acceleration is set to 0,60
Here is the requested info gotten on neon unstable:
$ cat /sys/class/dmi/id/modalias
dmi:bvnLENOVO:bvr7BCN36WW(V2.02):bd08/28/2013:br0.54:efr2.54:svnLENOVO:pnVILG1:pvrLenovoG400sTouch:skuLENOVO_BI_IDEAPAD7B:rvnLENOVO:rnINVALID:rvr00B98409WIN8STDSGL:cvnLENOVO:ct10:cvrLenovoG400sTouch:
$ udevadm info /dev/input/event7
P: /devices/platform/i8042/serio1/input/input5/event7
N: input/event7
L: 0
S: input/by-path/platform-i8042-serio-1-event-mouse
E: DEVPATH=/devices/platform/i8042/serio1/input/input5/event7
E: DEVNAME=/dev/input/event7
E: MAJOR=13
E: MINOR=71
E: SUBSYSTEM=input
E: USEC_INITIALIZED=9279397
E: ID_INPUT=1
E: ID_INPUT_TOUCHPAD=1
E: ID_INPUT_WIDTH_MM=39
E: ID_INPUT_HEIGHT_MM=16
E: ID_BUS=i8042
E: ID_SERIAL=noserial
E: ID_PATH=platform-i8042-serio-1
E: ID_PATH_TAG=platform-i8042-serio-1
E: ID_INPUT_TOUCHPAD_INTEGRATION=internal
E: LIBINPUT_DEVICE_GROUP=11/2/e:isa0060/serio1
E: DEVLINKS=/dev/input/by-path/platform-i8042-serio-1-event-mouse
~$ sudo touchpad-edge-detector 85x44 /dev/input/event7
Touchpad ETPS/2 Elantech Touchpad on /dev/input/event7
Move one finger around the touchpad to detect the actual edges
Kernel says: x [0..1218], y [0..522]
Touchpad sends: x [55..2380], y [-452..463] -^C
Touchpad size as listed by the kernel: 39x16mm
User-specified touchpad size: 85x44mm
Calculated ranges: 2325/915
Suggested udev rule:
# <Laptop model description goes here>
evdev:name:ETPS/2 Elantech Touchpad:dmi:bvnLENOVO:bvr7BCN36WW(V2.02):bd08/28/2013:br0.54:efr2.54:svnLENOVO:pnVILG1:pvrLenovoG400sTouch:skuLENOVO_BI_IDEAPAD7B:rvnLENOVO:rnINVALID:rvr00B98409WIN8STDSGL:cvnLENOVO:ct10:cvrLenovoG400sTouch:*
EVDEV_ABS_00=55:2380:27
EVDEV_ABS_01=-452:463:21
EVDEV_ABS_35=55:2380:27
EVDEV_ABS_36=-452:463:21
The output of 'libinput record' gotten while I reproduce the bug with the Media Player applet of KDE Plasma is attached.