Touchpad double tap and two finger scroll not working on Ubuntu 17.04
I recently upgraded from Ubuntu 16.04 to 17.04 and noticed that I have no option in "Mouse and Touchpad" setting for a double tap for click and two finger scroll.
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SIGMACHIP USB Keyboard id=11 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ SIGMACHIP USB Keyboard id=10 [slave keyboard (3)]
↳ Logitech VGA WebCam id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
↳ SIGMACHIP USB Keyboard id=15 [slave keyboard (3)]
and
$ xinput list-props 14
Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (142): 1
Coordinate Transformation Matrix (144): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (284): 0
libinput Tapping Enabled Default (285): 0
libinput Tapping Drag Enabled (286): 1
libinput Tapping Drag Enabled Default (287): 1
libinput Tapping Drag Lock Enabled (288): 0
libinput Tapping Drag Lock Enabled Default (289): 0
libinput Tapping Button Mapping Enabled (290): 1, 0
libinput Tapping Button Mapping Default (291): 1, 0
libinput Accel Speed (292): 0.000000
libinput Accel Speed Default (293): 0.000000
libinput Natural Scrolling Enabled (280): 0
libinput Natural Scrolling Enabled Default (281): 0
libinput Send Events Modes Available (265): 1, 1
libinput Send Events Mode Enabled (266): 0, 0
libinput Send Events Mode Enabled Default (267): 0, 0
libinput Left Handed Enabled (294): 0
libinput Left Handed Enabled Default (295): 0
libinput Scroll Methods Available (296): 0, 1, 0
libinput Scroll Method Enabled (297): 0, 1, 0
libinput Scroll Method Enabled Default (298): 0, 1, 0
libinput Disable While Typing Enabled (299): 1
libinput Disable While Typing Enabled Default (300): 1
Device Node (268): "/dev/input/event8"
Device Product ID (269): 2, 7
libinput Drag Lock Buttons (282): <no items>
libinput Horizontal Scroll Enabled (283): 1
and
$ apt list xserver-xorg-input*
Listing... Done
xserver-xorg-input-aiptek/zesty 1:1.4.1-2build1 amd64
xserver-xorg-input-all/zesty 1:7.7+16ubuntu3 amd64
xserver-xorg-input-elographics/zesty 1:1.4.1-1build6 amd64
xserver-xorg-input-evdev/zesty 1:2.10.5-1ubuntu1 amd64
xserver-xorg-input-evdev-dbg/zesty 1:2.10.5-1ubuntu1 amd64
xserver-xorg-input-evdev-dev/zesty,zesty 1:2.10.5-1ubuntu1 all
xserver-xorg-input-joystick/zesty 1:1.6.3-1build1 amd64
xserver-xorg-input-joystick-dev/zesty,zesty 1:1.6.3-1build1 all
xserver-xorg-input-libinput/zesty,now 0.25.0-0ubuntu1 amd64 [installed]
xserver-xorg-input-libinput-dev/zesty,zesty 0.25.0-0ubuntu1 all
xserver-xorg-input-mtrack/zesty 0.3.1-1build2 amd64
xserver-xorg-input-mutouch/zesty 1:1.3.0-1build9 amd64
xserver-xorg-input-synaptics/zesty 1.9.0-1ubuntu1 amd64
xserver-xorg-input-synaptics-dev/zesty,zesty 1.9.0-1ubuntu1 all
xserver-xorg-input-void/zesty 1:1.4.1-1build3 amd64
xserver-xorg-input-wacom/zesty 1:0.34.0-0ubuntu2 amd64
xserver-xorg-input-xwiimote/zesty 0.5-1build3 amd64
Solution 1:
After the upgrade the user space xorg-synaptics
was replaced by libinput
. In most cases it works better and is now default in new Ubuntu releases.
"Tap to click" is disabled in libinput
by default for a reason I can't understand. You can fix it by editing the /usr/share/X11/xorg.conf.d/40-libinput.conf
file.
Add
Option "Tapping" "True"
to the touchpad section of the file after Driver "libinput"
, and restart the session.
Regarding two-finger scrolling. Not all touchpads support this feature. All new do, but old ones don't. According to your output only edge scrolling is available.
libinput Scroll Methods Available (296): 0, 1, 0
The first number should be 1
if the touchpad supports two-finger scrolling.
The touchpad capabilities are reported to user space by the kernel. I don't think that xorg-synaptics
and libinput
read it differently.
If that is a bug and your touchpad is really capable of multitouch, that is more likely a kernel bug. Also you can always switch back to xorg-synaptics
by
sudo apt install xserver-xorg-input-synaptics
sudo apt remove xserver-xorg-input-libinput