一段时间后,Control+R 在所有程序中都停止工作

一段时间后,Control+R 在所有程序中都停止工作

Ubuntu 17.04 XFCE4

当我登录计算机时,Control+R 在所有程序中都有效。但是,一段时间后(通常是在一段时间不活动之后,即使计算机从不休眠,显示器也会关闭),它在所有程序中都停止工作(例如,Chrome 和 PHPStorm 都不会响应它,但它通常在这些程序中触发的相应操作在从菜单激活时有效)。所有其他快捷键都正常工作,似乎只有 Control+R 受到影响。

在系统“键盘”设置中没有与此组合绑定的应用程序快捷方式。

我已经运行了 xev 并验证了组合工作时和不工作时的输出是否相同。

要解决这个问题,我只需注销并重新登录 - 无需重新启动系统。

由于系统识别了该按键,但没有应用程序对其做出响应,我假设某个正在运行的进程正在劫持此组合,但我不知道如何找出是哪个应用程序。

答案1

Unix.SE 的回答作者:don_crissti。要发送Ctrl+r组合,请使用"ctrl+r",例如xdotool key "ctrl+r"


要找出哪个应用程序/程序获取了你的密钥,请使用 debug keysymXF86LogGrabInfo. 使用同时xdotool按下 + 键,例如在终端运行XF86LogGrabInfo

KEY=XF86AudioPlay
xdotool keydown ${KEY}; xdotool key XF86LogGrabInfo; xdotool keyup ${KEY} 

然后使用检查输出,请tail /var/log/Xorg.0.log
注意,使用gnome 3/gdmsystemd这不再记录到Xorg.0.log(而是记录到杂志)在这种情况下,你可以运行

journalctl -f

然后在另一个终端运行xdotool命令。切换到第一个终端,你会看到类似

/usr/lib/gdm/gdm-x-session[629]: Active grab 0x40c0a58e (xi2) on device 'Virtual core keyboard' (3):
/usr/lib/gdm/gdm-x-session[629]: client pid 708 /usr/bin/gnome-shell
/usr/lib/gdm/gdm-x-session[629]: at 32595124 (from passive grab) (device frozen, state 6)
/usr/lib/gdm/gdm-x-session[629]: xi2 event mask for device 3: 0xc000
/usr/lib/gdm/gdm-x-session[629]: passive grab type 2, detail 0xac, activating key 172

在上面的例子中,获取密钥的程序(客户端)是gnome-shell

相关内容