在 compiz 中使用 wmctrl 排列窗口时出现问题

在 compiz 中使用 wmctrl 排列窗口时出现问题

我正在尝试编写一个 bash 脚本来控制在特定视口上打开的窗口的排列,但遇到了一个问题,基本上我找不到以正确顺序重新定位窗口的方法——“正确顺序”是我们可以通过 alt-tab 获得的顺序。

因此,通常我运行我的脚本并且窗口位于屏幕上的正确位置,但是运行它的终端最终位于其他窗口下方,这是因为 wmctrl 返回的窗口列表似乎不是按 alt-tab 顺序排列的。

也许 wmctrl 没有该信息,在这种情况下,我希望有人可以建议替代的界面或方法。

当我引起您的注意时,也许有人可以解释我发现的一个奇怪现象,即“wmctrl -lG”返回的窗口原点似乎以 1/2 像素为单位 +/- x 和 y 偏移量或“某些东西”(而宽度+高度以像素为单位)?

例如:

$ wmctrl -i -r 0x08e01de3 -e 0,100,100,-1,-1

将指定窗口移动到屏幕上看起来像 100,100 的位置,然后读回窗口信息:

$ wmctrl -lG|grep 0x08e01de3

0x08e01de3  0 196  246  1267 639  U10

196? 246?

它是一致的,并且很容易编码,但对我来说似乎很奇怪,让我担心我误解了一些东西。

感谢您的帮助,如果此帖违反了任何规则,我深表歉意。这是我的第一次“提问”,下次我会努力改进。

相关内容