繁体   English   中英

如何防止重现窗口阻止X会话?

[英]How to prevent reparented window blocking X session?

我将外部窗口重新放置到Qt应用程序中( XReparentWindow, XMapRaised, XMoveResizeWindow )。 它可以正常工作,但是当我单击该父窗口时,系统锁定(没有鼠标或键盘事件),期望的可能是该父窗口内部的某些输入,或者是我的应用程序。

例如,尝试嵌入gedit并单击它会导致仅在gedit中发生键盘事件(甚至禁用了全局Awesome的热键),并且没有鼠标单击的任何地方(除非我使用Ctrl + Q关闭嵌入式gedit)。

如果使用QX11EmbedContainer,则相同。 即使对它setEnabled(false)

为什么锁起来? 如何防止这种锁定或如何禁用某些X窗口的输入处理?

XEmbed规范涵盖了使窗口进入自己的应用程序。 如果您阅读该规范,将会看到要完成这项工作,还需要做一些额外的工作:

http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM