1

请帮助我了解我在尝试在 Linux 上的 Openbox 中使用热键组合调用的 Bash 脚本中使 Windows 失去焦点时遇到的一个小问题的根源。

我在脚本中有几行:

wmctrl -F -r "${TERMINAL_TITLE}" -b add,shaded,below
xdotool key alt+Tab

第一行遮蔽了有问题的窗口并将其“放在”所有其他窗口下方,但仍保持焦点。第二行理论上应该将焦点移动到堆栈中的下一个窗口......</p>

……确实如此!但仅当脚本与 gmrun 一起运行时,或在终端本身中运行(因为我试图隐藏和散焦的窗口是终端模拟器)。

但是,如果使用 Openbox hotlkey(这是我需要的)调用脚本,或者在 heignbour 终端中运行(仅用于测试),它不会按预期工作。

无论如何,我都不是一个熟练的 bash 用户。我通常可以在这里和那里拼凑一个简单的脚本以满足我的卑微需求,但在这里我只是迷路了。将不胜感激的建议。

4

1 回答 1

0

好的,这可能是一个 XY 问题的案例,至少在某种程度上是这样。目前无法使用 wmctrl 控制焦点。但是,如果我停止尝试这样做,而不是对窗口进行着色,而是将其最小化——我实际上实现了我需要做的事情。虽然这也不能用 wmctrl 完成,但必须使用 xdotool:

xdotool windowminimize $( xdotool search --name "${TERMINAL_TITLE}" )

焦点开关。完毕!

于 2016-04-01T18:25:55.270 回答