Im Grunde versuche ich also, ein Watchdog-Skript zu schreiben, das Fenstertitel mit einer in einer Datei gespeicherten Liste vergleicht. Wenn das Fenster im Vollbildmodus ist, sollte das Skript nichts tun und fortfahren. Wenn das Fenster NICHT im Vollbildmodus ist, sollte das Skript aufrufen. wmctrl -r '$title' -b toggle,fullscreen
Ich habe die Manpages von wmctrl durchgesehen und es scheint keine narrensichere Methode zu geben, um festzustellen, ob ein Fenster tatsächlich im Vollbildmodus ist (ich könnte es beispielsweise aufrufen, wmctrl -l -G
aber wenn ich es mit der aktuellen Bildschirmauflösung vergleiche, ist das keine Garantie dafür, dass das Vollbild-Flag gesetzt wurde, sondern nur, dass das Fenster auf die Vollbildauflösung skaliert ist).
Gibt es eine geeignete Möglichkeit, diese bedingte Prüfung durchzuführen?
Antwort1
Nun, ich habe ein bisschen nachgeforscht, es sieht so aus, als ob Sie den Status des Vollbild-Umschalters xprop
ziemlich einfach abrufen können. Vor der Ausführung ist die Variable undefined wmctrl -r '$title' -b toggle,fullscreen
in der Ausgabe von . Nach der Ausführung lautet diese Variable wie folgt:
xprop -name '$title'
_NET_WM_STATE(ATOM) =
_NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN
Damit kann ich leicht feststellen, ob das Fenster bereits im Vollbildmodus ist, und muss nicht raten.