更新:我刚刚从 17.10 升级到 18.04。之前没法这么做,因为我正处于一个大型项目的中间阶段,不想冒任何风险。现在 xinput 可以正确报告 Elan 触摸板。现在我只需要尝试禁用三指点击...
我想更改触摸板的默认行为。我经常会不小心用三根手指碰到触摸板(例如滚动时),结果就是粘贴剪贴板中的内容...
我尝试了 xorg.d conf 中的一些选项,但没有效果。我怀疑我没有解决触摸板问题,因为我无法识别它。
华硕 UX310 Ubuntu 17.10
$ uname -a
Linux UX310 4.13.0-46-generic #51-Ubuntu SMP Tue Jun 12 12:36:29 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ xwayland-pointer:13 id=6 [slave pointer (2)]
⎜ ↳ xwayland-relative-pointer:13 id=7 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ xwayland-keyboard:13 id=8 [slave keyboard (3)]
$ cat /proc/bus/input/devices
I: Bus=0018 Vendor=04f3 Product=3022 Version=0100
N: Name="ELAN1200:00 04F3:3022 Touchpad"
P: Phys=i2c-ELAN1200:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-6/i2c-ELAN1200:00/0018:04F3:3022.0001/input/input15
U: Uniq=
H: Handlers=mouse0 event14
B: PROP=5
B: EV=b
B: KEY=e520 10000 0 0 0 0
B: ABS=260800000000003
$ dmesg
i2c_hid i2c-ELAN1200:00: i2c-ELAN1200:00 supply vdd not found, using dummy regulator
hid-multitouch 0018:04F3:3022.0001: Ignoring the extra HID_DG_INPUTMODE
input: ELAN1200:00 04F3:3022 Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-6/i2c-ELAN1200:00/0018:04F3:3022.0001/input/input15
hid-multitouch 0018:04F3:3022.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN1200:00 04F3:3022] on i2c-ELAN1200:00
$ udevadm info --query=property --name=/dev/input/event14
DEVLINKS=/dev/input/by-path/pci-0000:00:15.1-platform-i2c_designware.1-event-mouse
DEVNAME=/dev/input/event14
DEVPATH=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-6/i2c-ELAN1200:00/0018:04F3:3022.0001/input/input15/event14
ID_INPUT=1
ID_INPUT_HEIGHT_MM=70
ID_INPUT_TOUCHPAD=1
ID_INPUT_WIDTH_MM=103
ID_PATH=pci-0000:00:15.1-platform-i2c_designware.1
ID_PATH_TAG=pci-0000_00_15_1-platform-i2c_designware_1
ID_SERIAL=noserial
LIBINPUT_DEVICE_GROUP=18/4f3/3022:i2c-ELAN1200:00
MAJOR=13
MINOR=78
SUBSYSTEM=input
USEC_INITIALIZED=3437217
当我跑步时xinput test 6
,触摸、点击或单击触摸板时,屏幕上就会显示活动。
$ xinput --list-props 6
Device 'xwayland-pointer:13':
Device Enabled (119): 1
Coordinate Transformation Matrix (121): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (244): 0
Device Accel Constant Deceleration (245): 1.000000
Device Accel Adaptive Deceleration (246): 1.000000
Device Accel Velocity Scaling (247): 10.000000
我试图覆盖触摸板的默认行为。
$ ls /usr/share/X11/xorg.conf.d/
10-amdgpu.conf 10-quirks.conf 11-evdev-quirks.conf 40-libinput.conf 70-synaptics.conf
10-evdev.conf 10-radeon.conf 11-evdev-trackpoint.conf 51-synaptics-quirks.conf 70-wacom.conf
并创建了71-touchpad-disable3touch.conf
。
我尝试过的示例:
Section "InputClass"
Identifier "touchpad disable 3finger touch paste"
MatchIsPointer "true"
Option "Emulate3Buttons" "false"
Option "TapButton2" "3"
Option "ClickFinger2" "3"
Option "SwapAxes" "true"
EndSection
添加SwapAxes
了 ,以便非常清楚地显示是否选择了触摸板配置。不过轴没有交换,按钮也没有重新映射:
$ xmodmap -pp
There are 10 pointer buttons defined.
Physical Button
Button Code
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
每次编辑 .conf 后,我都会重新启动系统。
我如何改变触摸板的行为?
答案1
解决了。
我首先从 Ubuntu 17.10 升级到 18.04。现在 xinput 可以正确报告 Elan 触摸板。
我仍然无法使用 xorg.conf,因此我尝试了 GNOME Tweak Tool
$ sudo apt install gnome-tweak-tool
然后运行刚刚安装的“Tweaks”应用程序,转到“键盘和鼠标”部分,然后设置“中键单击粘贴 = 关闭”和“鼠标单击模拟 = 手指”。