当我运行firefox作为我的活动应用程序并执行[ctrl] + [shift] + T时,firefox会打开一个新选项卡。当我做[ctrl] + [alt] + T时,linux会打开一个新的终端窗口。让我思考这次行动的可能内部。
我曾假设对stdin的控制权在于活动应用程序,如果它读取了对它有意义的东西,那么它就会继续执行它。现在我觉得在将输入放入stdin之前,内核会扫描它以获取与之相关的快捷方式,并且只有剩余的那些被传递到stdin,并从那里传递到用户空间应用程序。
这种观点准确吗?
答案 0 :(得分:1)
你对造成它的原因是正确的,而不是细节。在这种情况下,它不是吞下它的内核,它是窗口管理器。
Ctrl + Alt + T的键盘快捷键被窗口管理器吃掉了。如果你转到窗口管理器键盘快捷键,找到一个绑定到Ctrl + Alt + T并且取消定义的快捷键,它将在FF中正常工作。
WM是一个"层"如果您愿意接收所有事件并传递它确定的与基础应用程序相关的事件。