编辑:这篇文章之前说过鼠标按钮根本不起作用。我最近才发现触摸触摸板可以让左键像点击板一样工作。
我刚买了一台戴尔 Precision 7550,它在触摸板下方有 3 个独立的物理鼠标按钮。它附带 Ubuntu 18.04,这些鼠标按钮可以正常工作。但是,我刚刚安装了 20.04,鼠标按钮出现了问题:我无法让右键执行任何操作,而中间按钮可以正常工作。左键的行为就像点击板的点击一样:如果我没有触摸触摸板,它什么也不做。但是,如果我同时触摸触摸板,那么它就可以正常工作:要么它发出左键单击,要么,如果我触摸触摸板的右下角,它会发出右键单击。
我如何让 Ubuntu 不再将其视为点击板,并注册物理鼠标按钮?
在(工作)18.04 中,xinput 显示
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ HID 05ac:0256 Consumer Control id=12 [slave pointer (2)]
⎜ ↳ HID 05ac:0256 Mouse id=13 [slave pointer (2)]
⎜ ↳ DELL09C3:00 0488:120A Touchpad id=20 [slave pointer (2)]
⎜ ↳ PS/2 Generic Mouse id=25 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=16 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=19 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Mouse id=28 [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)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ HID 05ac:0256 id=10 [slave keyboard (3)]
↳ HID 05ac:0256 System Control id=11 [slave keyboard (3)]
↳ Integrated_Webcam_HD: Integrate id=14 [slave keyboard (3)]
↳ Intel HID events id=21 [slave keyboard (3)]
↳ Intel HID 5 button array id=22 [slave keyboard (3)]
↳ Dell WMI hotkeys id=23 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=24 [slave keyboard (3)]
↳ HID 05ac:0256 Consumer Control id=26 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 System Control id=15 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=17 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 id=18 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=27 [slave keyboard (3)]
而(损坏的)20.04 显示:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ HID 05ac:0256 Mouse id=11 [slave pointer (2)]
⎜ ↳ HID 05ac:0256 Consumer Control id=13 [slave pointer (2)]
⎜ ↳ DELL09C3:00 0488:120A Mouse id=20 [slave pointer (2)]
⎜ ↳ DELL09C3:00 0488:120A Touchpad id=21 [slave pointer (2)]
⎜ ↳ PS/2 Generic Mouse id=27 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Mouse id=16 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=18 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=29 [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)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ HID 05ac:0256 id=10 [slave keyboard (3)]
↳ HID 05ac:0256 System Control id=12 [slave keyboard (3)]
↳ Integrated_Webcam_HD: Integrate id=14 [slave keyboard (3)]
↳ DELL09C3:00 0488:120A UNKNOWN id=22 [slave keyboard (3)]
↳ Intel HID events id=23 [slave keyboard (3)]
↳ Intel HID 5 button array id=24 [slave keyboard (3)]
↳ Dell WMI hotkeys id=25 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=26 [slave keyboard (3)]
↳ HID 05ac:0256 Consumer Control id=28 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 id=15 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 System Control id=17 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=19 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver v9.0 Consumer Control id=30 [slave keyboard (3)]
Microsoft 的东西是我的 USB 鼠标/键盘。我看到的唯一有意义的区别是在 20.04 上出现的DELL09C3:00 0488:120A UNKNOWN
,这表明某些硬件无法识别,尽管在 18.04 上识别的所有内容在 20.04 上也能识别。/etc/X11 几乎相同,只有在Xsession.d/70im-config_launch
、Xsession.d/90qt-a11y
、 方面有一些变化app-defaults/XLogo
和app-defaults/XCalc
这些变化看起来都不相关,除了可能 QT_LINUX_ACCESSIBILITY_ALWAYS_ON
在 90qt-a11y 中删除了 。
答案1
最后终于把它修好了。
我首先安装xserver-xorg-input-synaptics
,然后重新启动。行为没有改变,但驱动程序确实发生了变化:xinput list-props "DELL09C3:00 0488:120A Touchpad"
现在有几个新的“synaptics”选项,包括Synaptics ClickPad
设置为 1 的选项。通过将其设置为 0 可以xinput set-prop "DELL09C3:00 0488:120A Touchpad" "Synaptics ClickPad" 0
立即解决问题。
这不是很令人满意,因为不清楚为什么触摸板首先被检测为点击板。不过,触摸板现在可以使用了,所以我将此标记为已解决。
值得指出的是,其他人也报告了同样的问题,例如在此 reddit 帖子中:https://www.reddit.com/r/Dell/comments/hw1o4c/dell_precision_laptop_7550_1_month_in/
答案2
在 Fedora 32 下遇到了同样的问题。发现了一些可能对 Ubuntu 等也有用的信息。
使用原始的 x11 驱动程序 (libinput),我发现xinput set-prop "DELL09C3:00 0488:120A Touchpad" "libinput Click Method Enabled" 0, 1
修复鼠标左键和中键,使其不需要触摸触控板来注册点击,但是当触摸左下角时使用左键右键单击会停止工作,右键仍然不起作用。
将 OP 的解决方案翻译至 Fedora:
sudo dnf install xorg-x11-drv-synaptics-legacy
为了在启动时应用 ClickPad 配置更改,我创建/etc/X11/xorg.conf.d/70-disable-clickpad.conf
了
Section "InputClass"
Identifier "Disable clickpad for Dell Precision 7550 Trackpad"
MatchProduct "DELL09C3:00 0488:120A Touchpad"
MatchDriver "synaptics"
Option "ClickPad" "off"
EndSection
我希望这也适用于 Ubuntu。
完成以上两项更改后,重新启动,所有按钮均能正常工作。