如何防止程序 windows 被移动到桌面工具栏下?

How to prevent program windows from being moved under a desktop toolbar?

我不知道我想要的功能叫什么,所以我只是描述一下。在 linux gnome 下有一个系统工具栏(默认情况下)在屏幕顶部运行。现在,如果您尝试将程序 window 移动到此工具栏上方,它会停在工具栏下方。您可以将鼠标指针移到工具栏上,但程序 window 不会再移到更高的位置。这类似于 "always on top" 但增加了 windows 不能放在它下面的功能。

我的问题是这是怎么做到的?是 window 经理干的吗?可以使用 Java 还是我必须使用 xlib?

谢谢。

我找到了解决办法。 window 管理器 属性 _NET_WM_STRUT_PARTIAL 为工具栏保留 space。这个 space 不能被普通 windows 使用,所以通过设置这个 属性 其他 windows 不能移动到工具栏上方或下方(就像 redhat 中的 gnome 2 工具栏一样) .