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