每当我右键单击 X 时,我几乎总是会触发菜单中的第一个选项,除非我正在思考我在做什么,因为我:
- 鼠标按下;出现菜单
- 不小心将鼠标向下和/或向右拖动 1-3 个像素
- 鼠标向上;已选择菜单项
有什么方法可以调整这个,这样菜单就不会那么容易触发吗?如果重要的话,我在 Gentoo Linux 上使用 Gnome 3/Cinnamon。
答案1
您询问如何在“X”中执行此操作,但此设置通常是通过桌面环境实用程序控制的。在 KDE 中,您有鼠标设置。如果您在简单地键入“鼠标”时没有找到 K 菜单,您可以通过以下方式启动它
a) K-菜单 -> 计算机 -> 系统设置 -> 输入设备(在硬件下) -> 鼠标
或者
b) 在命令提示符、终端或其他运行菜单中,输入命令“systemsettings”并在硬件部分中选择输入设备
查看KDE鼠标设置中的“高级选项卡”,调整调整指针阈值、拖动延迟时间和拖动距离。增加值以降低其敏感度。
我使用过的所有其他桌面环境中都有类似的实用程序。
答案2
如果您正在寻找与桌面环境无关的解决方案,请查看 xinput。
要获取已知 X 输入设备的名称和 ID,请首先运行
xinput --list
你会看到类似这样的输出:
~$ xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics 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)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ HP HD Webcam [Fixed] id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
↳ HP WMI hotkeys id=12 [slave keyboard (3)]
每个主设备下面是多个从设备。通过描述性名称识别您使用的从属设备。我会选择 Synaptics 触摸板,因为这就是我使用的,但您会选择鼠标或您拥有的任何其他指针设备。
现在列出该设备上的属性 - 您可以使用设备名称(带引号)或 ID
xinput --list-props DEVICE
例如
~$ xinput --list-props 11
Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (132): 1
Coordinate Transformation Matrix (134): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (254): 1
Device Accel Constant Deceleration (255): 2.500000
Device Accel Adaptive Deceleration (256): 1.000000
Device Accel Velocity Scaling (257): 12.500000
Synaptics Edges (258): 1767, 5395, 1649, 4613
Synaptics Finger (259): 25, 30, 256
Synaptics Tap Time (260): 180
Synaptics Tap Move (261): 239
Synaptics Tap Durations (262): 180, 180, 100
Synaptics ClickPad (263): 0
Synaptics Tap FastTap (264): 0
Synaptics Middle Button Timeout (265): 75
Synaptics Two-Finger Pressure (266): 282
Synaptics Two-Finger Width (267): 7
Synaptics Scrolling Distance (268): 100, 100
Synaptics Edge Scrolling (269): 0, 0, 0
Synaptics Two-Finger Scrolling (270): 0, 0
Synaptics Move Speed (271): 1.000000, 1.750000, 0.039800, 40.000000
Synaptics Edge Motion Pressure (272): 30, 160
Synaptics Edge Motion Speed (273): 1, 435
Synaptics Edge Motion Always (274): 0
Synaptics Off (275): 0
Synaptics Locked Drags (276): 0
Synaptics Locked Drags Timeout (277): 5000
Synaptics Tap Action (278): 0, 0, 0, 0, 0, 0, 0
Synaptics Click Action (279): 1, 1, 0
Synaptics Circular Scrolling (280): 0
Synaptics Circular Scrolling Distance (281): 0.100007
Synaptics Circular Scrolling Trigger (282): 0
Synaptics Circular Pad (283): 0
Synaptics Palm Detection (284): 0
Synaptics Palm Dimensions (285): 10, 200
Synaptics Coasting Speed (286): 20.000000, 50.000000
Synaptics Pressure Motion (287): 30, 160
Synaptics Pressure Motion Factor (288): 1.000000, 1.000000
Synaptics Resolution Detect (289): 1
Synaptics Grab Event Device (290): 1
Synaptics Gestures (291): 1
Synaptics Capabilities (292): 1, 0, 1, 1, 1, 1, 1
Synaptics Pad Resolution (293): 74, 40
Synaptics Area (294): 0, 0, 0, 0
Synaptics Noise Cancellation (295): 8, 8
Device Product ID (249): 2, 7
Device Node (250): "/dev/input/event8"
您将不得不尝试不同属性的值。这实际上取决于您的设备提供的选项。您需要通读该列表并尝试确定哪些与敏感性相关。
看看我的设备,我注意到点击时间、点击移动、FastTap 等项目在我看来与灵敏度有关。
一般来说你会做
xinput --set-prop DEVICE PROPERTY VALUE
。手册页是这样解释的:
--set-prop [--type=atom|float|int] [--format=8|16|32] 设备属性值 [...] 将属性设置为给定值。如果未指定,则属性的格式和类型保持原样。参数根据属性类型进行解释。
例子
xinput --set-prop 11 261 250
这会将设备 11 属性 261 设置为值 250。
您还可以使用长格式,指定每个属性“名称”,例如
~$ xinput --set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Off" 1
请注意,上面的示例关闭了触摸板。将其设置回“0”会将其重新打开。
答案3
GUI 主题在这里可以发挥很大作用。现在,我使用的桌面/工作区主题组合绘制了带有非活动“边框”区域的上下文菜单,我估计该区域的宽度可能约为 5 像素。我认为其他桌面环境的主题集也有类似的变化。您必须将指针移过此非活动区域,然后才能(意外地)激活选项。
答案4
我认为@Johan 给出了很好的答案。另一件需要添加的事情是您可以尝试gconf-editor
,它控制 Gnome 的设置。它可能可以在“系统设置”之类的地方访问,或者您可以从终端启动它。