Dmi*_*yev 4 xorg configuration touch-screen
我有一台带有触摸屏的计算机(实际上是 Banana Pi Pro),我已将其配置为通过xorg.conf以下方式模拟右键单击:
Section "InputClass"
Identifier "Touchscreen"
Option "EmulateThirdButton" "1"
Option "EmulateThirdButtonTimeout" "750"
Option "EmulateThirdButtonThreshold" "30"
EndSection
Run Code Online (Sandbox Code Playgroud)
这真的很好用。但有时,当我想使用真正的鼠标时,这些设置变得很烦人,因为长时间的鼠标左键单击会转换为鼠标右键单击。此外,由于 30 像素阈值,拖动选择变得不精确。
我想知道是否可以在使用鼠标时禁用右键单击仿真:
是否可以在运行时修改 Xorg 配置以更改“InputClass”部分?
如果不是,是否可以将此部分仅应用于一种特定的输入设备(触摸屏)?
如果唯一的方法是更新xorg.conf和重新启动服务器,那么最不痛苦的方法是什么?理想情况下,保留已经运行的应用程序会很好,但我怀疑这是可能的。
有没有一个程序可以在不改变的情况下做我想要的xorg.conf?就像在这个问题中一样, wherexrandr用于动态配置参数,这些参数在通过xorg.conf.
xinput控制输入设置。它对输入xrandr和显示具有相同的作用。
运行xinput list以列出设备。每个设备都有一个名称和一个数字 ID。您可以使用此名称或此 ID 来列出相应设备的属性。设备 ID 可能取决于检测到设备的顺序,因此要针对特定设备,请使用其名称。例如,我有一个鼠标作为设备 8;这是其属性的摘录:
$ xinput list-props 8
…
Evdev Third Button Emulation (280): 0
Evdev Third Button Emulation Timeout (281): 1000
Evdev Third Button Emulation Button (282): 3
Evdev Third Button Emulation Threshold (283): 20
…
Run Code Online (Sandbox Code Playgroud)
因此,我可以使用以下任一命令打开此设备的第三个按钮模拟:
xinput set-prop 8 280 1
xinput set-prop 8 'Evdev Third Button Emulation' 1
Run Code Online (Sandbox Code Playgroud)
有一个设备层次结构,以xinput list图形方式表示。将属性应用于设备也会将其应用于其子设备。例如,您可以通过将属性应用于根指针来将属性应用于所有指针设备Virtual core pointer。