如何防止重新设置窗口阻塞X会话?

时间:2011-10-12 19:15:08

标签: x11 xlib reparenting

我将一个外部窗口重新显示到Qt应用程序(XReparentWindow, XMapRaised, XMoveResizeWindow)中。它工作正常,但是当我点击那个重新定义的窗口系统锁定(没有鼠标或键盘事件),期望可能是重新定义的窗口内的一些输入,或者可能是我的应用程序。

尝试嵌入,例如gedit并点击它只会导致gedit中的键盘事件(甚至禁用全局Awesome的热键)并且无法点击任何鼠标(除非我使用Ctrl + Q关闭嵌入式gedit)。

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

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

1 个答案:

答案 0 :(得分:0)

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

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