我遇到的情况是,某个应用程序(VirtualBox)无法在平铺窗口管理器上正确调整窗口大小。
我希望能够通过事件触发调整大小,最好是一般情况下,这样它将覆盖所有窗口(不仅仅是 VirtualBox)。它不需要调整窗口大小,只需告诉窗口WM已经触发了调整大小事件。如何通过命令实现这样的调整大小?
我认为XSendEvent
+XResizeWindow
会做我需要的事情,但我看不到任何从 bash 或类似的方法调用它们的方法。我本以为xdotool
或类似的事情会实现这一点,但它不能。我也对其他事件或黑客持开放态度,这些事件或黑客也会触发我需要的东西。
答案1
该SIGWINCH
信号可用于通知进程其窗口大小已更改。我有时在 shell 窗口中使用它作为kill -WINCH $$
.
要将其映射到您的所有流程,您可以使用pkill
:
pkill -WINCH -u "$USER"
该信号的默认操作是忽略它,因此只有选择识别它的进程才会受到影响。