XLib:一旦全屏显示,我该如何返回窗口模式?

时间:2012-01-22 07:10:14

标签: c x11 xlib

我能够让我的应用程序全屏显示,但我无法通过边框可见返回到窗口模式。我试图调用XDeleteProperty清除全屏设置,但它似乎无法正常工作。

1 个答案:

答案 0 :(得分:2)

如果您正在使用_NET_WM_STATE http://standards.freedesktop.org/wm-spec/latest/ar01s05.html#id2569140,那么在映射窗口之前设置属性,但在映射窗口后,您必须发送客户端消息,窗口管理器会更新属性。阅读EWMH的部分开头“要更改映射窗口的状态,客户端必须发送_NET_WM_STATE客户端消息到根窗口......”

这是因为一旦您映射窗口窗口管理器负责维护其状态,如果应用程序和WM都可以直接修改属性,那么就会有竞争。

请参阅GTK +等工具包的源代码,例如代码。