xvkbd 不适用于 GTK3 应用程序

Jjd*_*elc 5 gnome gtk3

我映射了几个鼠标按钮(Fluxbox)来执行 xvkbd 命令,例如 Enter (\r) 和 Ctrl+U (\Cu),这非常方便。

它适用于终端和大多数应用程序,但不适用于 GTK3 应用程序,现在 Firefox 也转向它,这一点变得更加引人注目。

我通过在终端上进行测试:

sleep 3 && xvkbd -xsendevent -text "\Cu"
Run Code Online (Sandbox Code Playgroud)

并快速将焦点放在 GTK2 应用程序的文本字段上,并且它起作用了。当我在 GTK3 应用程序上执行此操作时,却没有。

其余的鼠标绑定工作正常,因此 GTK 识别鼠标按键但忽略指令,xvkbd -xsendevent如上述测试所证明。

有什么见解吗?

我发现的只是 2012 年的邮件列表电子邮件,没有回复,也没有太多信息:https ://mail.gnome.org/archives/gtk-list/2012-May/msg00001.html

Jjd*_*elc 4

我的解决方案是更换工具,xdotool效果很好。这似乎是因为 GTK3 已切换到 xvkbd 不支持的 X 输入 2.0。

我的新按键绑定是:

xdotool key "Return"
xdotool key "Control_L+u"
Run Code Online (Sandbox Code Playgroud)

哪个替换:

xvkbd -xsendevent -text "\r"
xvkbd -xsendevent -text "\Cu"
Run Code Online (Sandbox Code Playgroud)