制作一个窗口句柄 * 输入?

制作一个窗口句柄 * 输入?

Xorg/DE 总是处理一些键盘/鼠标输入事件,而不是当前聚焦的窗口,这很有用,但我想为特定应用程序破例(因为原因)。

也就是说,是否可以以捕获和处理所有输入(在打开和聚焦时)的方式执行或编码应用程序?

如果你愿意的话,所有输入都是一个黑洞,任何输入都无法逃脱窗口。

例如,Ctrl+Alt F3退出 DE 并进入虚拟控制台,我不希望在运行此应用程序时发生这种情况,我希望应用程序处理该输入(并且不对其执行任何操作),而 Xorg/DE对此一无所知。

答案1

X11 支持应用程序获取密钥,以便特定密钥始终到达该应用程序。还可以将焦点锁定到特定窗口。我希望 Wayland 支持焦点锁定但不支持按键抓取,但我不确定。

话虽如此,应用程序无法获取类似的内容,Ctrl+Alt F3因为图形服务器本身会在到达应用程序层之前对其进行解释。但是,X11 和 wayland 都支持更改键盘映射以禁用或删除这些特殊键的操作。

相关内容