![如何修复 Ubuntu 17.04 中的手掌检测](https://linux22.com/image/1203106/%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%20Ubuntu%2017.04%20%E4%B8%AD%E7%9A%84%E6%89%8B%E6%8E%8C%E6%A3%80%E6%B5%8B.png)
我从 Ubuntu 16.04 开始就遇到了这个问题。手掌检测根本不起作用。我尝试运行这文章,但没有效果。
输出xinput
:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ DLLC6B2:00 06CB:75BF Touchpad id=11 [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)]
↳ Integrated_Webcam_HD id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ Dell WMI hotkeys id=14 [slave keyboard (3)]
↳ DELL Wireless hotkeys id=15 [slave keyboard (3)]
`xinput list-props 11 的输出:
Device 'DLLC6B2:00 06CB:75BF Touchpad':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (267): 1
Device Accel Constant Deceleration (268): 2.500000
Device Accel Adaptive Deceleration (269): 1.000000
Device Accel Velocity Scaling (270): 12.500000
Synaptics Edges (271): 49, 1180, 50, 879
Synaptics Finger (272): 25, 30, 0
Synaptics Tap Time (273): 180
Synaptics Tap Move (274): 67
Synaptics Tap Durations (275): 180, 180, 100
Synaptics ClickPad (276): 1
Synaptics Middle Button Timeout (277): 0
Synaptics Two-Finger Pressure (278): 282
Synaptics Two-Finger Width (279): 7
Synaptics Scrolling Distance (280): -30, -30
Synaptics Edge Scrolling (281): 0, 0, 0
Synaptics Two-Finger Scrolling (282): 1, 1
Synaptics Move Speed (283): 1.000000, 1.750000, 0.129870, 0.000000
Synaptics Off (284): 0
Synaptics Locked Drags (285): 0
Synaptics Locked Drags Timeout (286): 5000
Synaptics Tap Action (287): 2, 3, 0, 0, 1, 3, 0
Synaptics Click Action (288): 1, 3, 0
Synaptics Circular Scrolling (289): 0
Synaptics Circular Scrolling Distance (290): 0.100000
Synaptics Circular Scrolling Trigger (291): 0
Synaptics Circular Pad (292): 0
Synaptics Palm Detection (293): 1
Synaptics Palm Dimensions (294): 5, 5
Synaptics Coasting Speed (295): 20.000000, 50.000000
Synaptics Pressure Motion (296): 30, 160
Synaptics Pressure Motion Factor (297): 1.000000, 1.000000
Synaptics Resolution Detect (298): 1
Synaptics Grab Event Device (299): 0
Synaptics Gestures (300): 1
Synaptics Capabilities (301): 1, 0, 0, 1, 1, 0, 0
Synaptics Pad Resolution (302): 12, 12
Synaptics Area (303): 0, 0, 0, 0
Synaptics Soft Button Areas (304): 614, 0, 761, 0, 0, 0, 0, 0
Synaptics Noise Cancellation (305): 7, 7
Device Product ID (264): 1739, 30143
Device Node (263): "/dev/input/event10"
内容/usr/share/X11/xorg.conf.d/40-libinput.conf
:
# Match on all types of devices but tablet devices and joysticks
Section "InputClass"
Identifier "libinput pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
答案1
Synaptics 用户空间驱动程序在手掌检测方面表现不佳。
在 Ubuntu 17.04 中libinput
是默认的用户空间驱动程序。由于某种原因,它未安装。
在终端中运行
sudo apt install xserver-xorg-input-libinput
安装它。然后重新启动。
默认情况下,点击功能可能被禁用。编辑/usr/share/X11/xorg.conf.d/40-libinput.conf
后显示如下内容:
# Match on all types of devices but tablet devices and joysticks
Section "InputClass"
Identifier "libinput pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "Tapping" "True"
Option "NaturalScrolling" "True"
EndSection
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
实现点击和自然滚动。