2016-03-28 10 views
1

Bitte helfen Sie mir zu verstehen, die Quelle eines kleinen Problems, das ich habe, wenn versucht, einen Windows loose Fokus in einem Bash-Skript mit einer Tastenkombination in Openbox auf Linux aufgerufen.Switching Fokus in Bash-Skript

Ich habe ein paar Zeilen im Skript:

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

Die erste Zeile Schattierungen das Fenster in Frage und „fällt“ es unter all den anderen, aber es remaines konzentriert. Die zweite Zeile sollte theoretisch den Fokus auf das nächste Fenster im Stapel verschieben ...

... und es tut es! Aber nur wenn das Skript mit gmrun läuft, oder im Terminal selbst (weil das Fenster, das ich versuche zu verstecken, & defocus ist ein Terminal-Emulator).

Es funktioniert jedoch nicht wie vorgesehen, wenn das Skript mit einem Openbox-Hotlkey aufgerufen wird (was ich brauche), oder in einem heignbour-Terminal laufen (nur für einen Test).

Ich bin kein tüchtiger bash Benutzer mit allen Mitteln. Normalerweise kann ich hier und da ein einfaches Skript für meine bescheidenen Bedürfnisse zusammenstellen, aber hier bin ich einfach verloren. Ich schätze einen Rat.

Antwort

0

ok, das war wahrscheinlich ein Fall von einer XY-Frage, zumindest bis zu einem gewissen Grad. Es gibt derzeit keine Möglichkeit, den Fokus mit wmctrl zu steuern. Aber wenn ich aufhöre, das zu tun, und anstatt das Fenster zu schattieren, minimiere es einfach - ich erreiche tatsächlich, was ich tun muss. obwohl dies auch nicht mit wmctrl getan werden musste xdotool verwenden:

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

Fokus wechselt. erledigt!