如何在Ubuntu上打开一个非装饰的全屏窗口

时间:2014-06-18 14:51:19

标签: c unix x11 xlib

在Ubuntu上打开非装饰全屏窗口的诀窍是什么?我曾经将_NET_WM_STATE属性更改为_NET_WM_STATE_FULLSCREEN以实现此目的,但在KDE上正常工作时,它似乎不适用于Ubuntu(GNOME;使用12.04 LTS测试)。左侧的启动器和标题栏仍在那里,显示在我未装饰的全屏窗口上方,这不是我想要的。

然而,当在Firefox中切换到全屏模式时,Firefox的全屏窗口覆盖整个屏幕,包括启动器面板和标题栏,因此必须能够以某种方式打开覆盖整个屏幕的窗口,包括Ubuntu'发射器和标题栏。

有没有人可以解释如何在没有任何中间件的情况下使用普通X11来实现这种行为?

谢谢!

2 个答案:

答案 0 :(得分:0)

我发现了问题。设置_NET_WM_STATE_FULLSCREEN是不够的。还应该将override_redirect属性设置为TRUE,以防止窗口管理器通过将启动器面板和标题栏放在我的全屏窗口上来拦截配置和映射请求,这似乎正是GNOME在Ubuntu上所做的。将override_redirect设置为TRUE会阻止此操作。

答案 1 :(得分:0)

Gnome默认设置窗口最大大小,使其不覆盖面板。除非您删除WM_NORMAL_HINTS中的相应提示,或将最小尺寸和最大尺寸设置为您的屏幕尺寸,否则它不会超出该尺寸调整窗口大小。

参见例如herehere

这对KDE或任何其他DE也不会有任何伤害。

请务必在退出全屏模式时重置最小尺寸。