将X11窗口的部分标记为可拖动

时间:2012-07-19 18:19:49

标签: x11 xlib window-managers window-management

如果我想要一个未修饰的窗口(例如,我可以自己绘制装饰),有没有办法告诉当前的X11窗口管理器窗口区域应该可以由窗口管理器拖放和管理?我对低级解决方案(Xlib,XCB或类似解决方案)感兴趣。我也在寻找尽可能标准的解决方案。

另外,我可以将窗口区域标记为代表关闭按钮吗?

我在问这个问题,因为如果我可以在窗户的装饰上添加额外的内容,那就太好了。这是受Apple的OS X的启发,其中所有装饰都是普通的NSView,有些(关闭按钮等)甚至可以以文档的方式访问。添加其他内容也受到OS X的启发,可以右键单击与窗口关联的文档名称(在标题栏上)并获取文档的路径。同时,即使应用程序没有响应,窗口仍然可以移动,因此可拖动区域必须以某种方式传达给窗口管理器(即WindowServer,对吧?)。

因此,如果在X11下有一种标准方式(或广泛使用的FreeDesktop.org扩展或其他方式),我很乐意了解它。 : - )

1 个答案:

答案 0 :(得分:1)

没办法。

X11甚至不知道窗口管理器是什么。 ICCCM和Freedesktop标准差别不大。他们了解窗口管理器,但没有强制要求关闭和拖动窗口的任何特定方式,或者确实具备执行此类操作的能力。所以没有关闭按钮或拖动角或标题栏的官方概念,也没有用于自定义此类事物的API。