我在新电脑(Dell Precision 7550)上安装新的 Ubuntu 20.04 时遇到问题。点击板/触摸板如下所示:
右键和中键一直有效。但是左键只有触摸触摸板时才有效,这很烦人。
问题:如何修复该问题,并使触摸板左键即使在没有被触摸时也能工作?
这是当前配置。我的电脑上安装了以下软件包:
libinput-bin 1.15.5-1
libinput10 1.15.5-1
xserver-xorg-input-libinput 0.29.0-1
xserver-xorg-input-synaptics 1.9.1-1
这是我打印时得到的结果xinput list
:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ DELL09C3:00 0488:120A Mouse id=11 [slave pointer (2)]
⎜ ↳ DELL09C3:00 0488:120A Touchpad id=12 [slave pointer (2)]
⎜ ↳ PS/2 Generic Mouse id=18 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Video Bus id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated_Webcam_HD: Integrate id=10 [slave keyboard (3)]
↳ DELL09C3:00 0488:120A UNKNOWN id=13 [slave keyboard (3)]
↳ Intel HID events id=14 [slave keyboard (3)]
↳ Intel HID 5 button array id=15 [slave keyboard (3)]
↳ Dell WMI hotkeys id=16 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=17 [slave keyboard (3)]
以下是该文件的内容/usr/share/X11/xorg.conf.d/40-libinput.conf
:
# Match on all types of devices but joysticks
#
# If you want to configure your devices, do not copy this file.
# Instead, use a config snippet that contains something like this:
#
# Section "InputClass"
# Identifier "something or other"
# MatchDriver "libinput"
#
# MatchIsTouchpad "on"
# ... other Match directives ...
# Option "someoption" "value"
# EndSection
#
# This applies the option any libinput device also matched by the other
# directives. See the xorg.conf(5) man page for more info on
# matching devices.
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
以及以下内容usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf
:
Section "InputClass"
Identifier "Dell Inspiron embedded buttons quirks"
MatchTag "inspiron_1011|inspiron_1012"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
Option "JumpyCursorThreshold" "90"
EndSection
Section "InputClass"
Identifier "Dell Inspiron quirks"
MatchTag "inspiron_1120"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
Option "JumpyCursorThreshold" "250"
EndSection
Section "InputClass"
Identifier "HP Mininote quirks"
MatchTag "mininote_1000"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
Option "JumpyCursorThreshold" "20"
EndSection
以及以下内容/usr/share/X11/xorg.conf.d/70-synaptics.conf
:
# Example xorg.conf.d snippet that assigns the touchpad driver
# to all touchpads. See xorg.conf.d(5) for more information on
# InputClass.
# DO NOT EDIT THIS FILE, your distribution will likely overwrite
# it when updating. Copy (and rename) this file into
# /etc/X11/xorg.conf.d first.
# Additional options may be added in the form of
# Option "OptionName" "value"
#
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
# This option is recommend on all Linux systems using evdev, but cannot be
# enabled by default. See the following link for details:
# http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
MatchDevicePath "/dev/input/event*"
EndSection
Section "InputClass"
Identifier "touchpad ignore duplicates"
MatchIsTouchpad "on"
MatchOS "Linux"
MatchDevicePath "/dev/input/mouse*"
Option "Ignore" "on"
EndSection
# This option enables the bottom right corner to be a right button on clickpads
# and the right and middle top areas to be right / middle buttons on clickpads
# with a top button area.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Default clickpad buttons"
MatchDriver "synaptics"
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
EndSection
# This option disables software buttons on Apple touchpads.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Disable clickpad buttons on Apple touchpads"
MatchProduct "Apple|bcm5974"
MatchDriver "synaptics"
Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
EndSection
答案1
@Vincent:不知道您是否解决了这个问题。我在新安装的 Fedora 33 上遇到了同样的问题(因此这不是 Ubuntu 独有的)。
简而言之:
确保你有一个 synaptics 模块(驱动程序)(看起来它已经对你有用了)
检查 ClickPad 设置
xinput 列表属性“DELL09C3:00 0488:120A 触摸板”| grep -i click
如果 Synaptics ClickPad 为 1
使用将其设置为 0
xinput set-prop “DELL09C3:00 0488:120A 触摸板” “Synaptics ClickPad” 0
通常它会立即解决问题
最后一个小小的改动是让这个修复永久生效(否则它会在重启时消失)
通常,您可以将“xinput set-prop”命令放在 $HOME 中的 .xsessionrc 中。在某些系统上,它似乎是 .xinputrc 文件。其他一些方法可能也可以使用(启动命令、脚本等)。