【发布时间】:2012-03-30 14:41:49
【问题描述】:
我想为仅支持以下操作的演示文稿(非用户可控)实现一个简单的专用窗口管理器:
- 移动和调整窗口大小
- 切换桌面
- 在不破坏当前图像的情况下启动不在当前桌面(在后台)的应用程序。
我不需要任何用户输入、按钮/标题……
我应该使用什么现有的窗口管理器作为示例?有很多小的“hello world”窗口管理器,但它们通常不支持桌面切换。
【问题讨论】:
标签: linux window-managers
我想为仅支持以下操作的演示文稿(非用户可控)实现一个简单的专用窗口管理器:
我不需要任何用户输入、按钮/标题……
我应该使用什么现有的窗口管理器作为示例?有很多小的“hello world”窗口管理器,但它们通常不支持桌面切换。
【问题讨论】:
标签: linux window-managers
您不需要重新实现轮子。
openbox 会做你提到的一切,除此之外。
只需编辑rc.xml 即可禁用根菜单,然后重新启动。
Openbox 还允许per app setting,以便某些应用程序可以默认在特定桌面上打开,或以特定大小打开,或隐藏打开。
它还支持在窗口选择中使用通配符,以便设置可以应用到所有窗口。
devilspie2 是一个窗口匹配实用程序,可以在窗口打开时执行操作。
它是高度可破解的,代码是available on github。当它们打开时,它将按名称/类/等匹配窗口,并对它们执行操作。 (包括匹配所有窗口并将它们移动到不同的桌面。它适用于大多数窗口管理器。
基于原始的devilspie,它没有 Lua 脚本,而是使用 s-exprs 进行配置。
xdotool 还允许您在 Windows 上执行复杂的操作,而无需破解任何代码。如果您需要,它甚至会伪造用户输入(鼠标/kbd)。
【讨论】:
rc.xml 文件中根据其 X 属性在特定桌面上打开窗口。