手动触发窗口调整大小事件?

手动触发窗口调整大小事件?

我遇到的情况是,某个应用程序(VirtualBox)无法在平铺窗口管理器上正确调整窗口大小。

我希望能够通过事件触发调整大小,最好是一般情况下,这样它将覆盖所有窗口(不仅仅是 VirtualBox)。它不需要调整窗口大小,只需告诉窗口WM已经触发了调整大小事件。如何通过命令实现这样的调整大小?

我认为XSendEvent+XResizeWindow会做我需要的事情,但我看不到任何从 bash 或类似的方法调用它们的方法。我本以为xdotool或类似的事情会实现这一点,但它不能。我也对其他事件或黑客持开放态度,这些事件或黑客也会触发我需要的东西。

答案1

SIGWINCH信号可用于通知进程其窗口大小已更改。我有时在 shell 窗口中使用它作为kill -WINCH $$.

要将其映射到您的所有流程,您可以使用pkill

pkill -WINCH -u "$USER"

该信号的默认操作是忽略它,因此只有选择识别它的进程才会受到影响。

相关内容