Vollbildstatus des Fensters unter Linux erkennen?

1319
Garrett Stewart

Im Grunde versuche ich, ein Watchdog-Skript zu schreiben, das Fenstertitel anhand einer in einer Datei gespeicherten Liste prüft. Wenn das Fenster Vollbild ist, sollte das Skript nichts tun und weitergehen. Wenn das Fenster NICHT Vollbild ist, sollte das Skript aufrufen, dass wmctrl -r '$title' -b toggle,fullscreenich die wmctrl-Manpages durchgesehen habe, und es scheint keine narrensichere Methode zu sein, um zu erkennen, ob ein Fenster tatsächlich Vollbild ist (zum Beispiel könnte ich wmctrl -l -Gaber wenn ich Vergewissern Sie sich anhand der aktuellen Bildschirmauflösung, dass das Vollbild-Flag nicht gesetzt wurde, nur dass das Fenster auf die volle Bildschirmauflösung skaliert ist.

Gibt es eine anständige Art und Weise, um diese bedingte Prüfung durchzuführen?

0

1 Antwort auf die Frage

1
Garrett Stewart

Nun, ich habe ein bisschen gegraben, es sieht so aus, als könnten Sie den Status des Vollbild-Umschalters xpropziemlich einfach verwenden. Vor dem Ausführen wmctrl -r '$title' -b toggle,fullscreender Ausgabe von xprop -name '$title'ist die Variable _NET_WM_STATE(ATOM) =undefiniert. Nach der Ausführung lautet diese Variable wie folgt: _NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN

Damit kann ich leicht erkennen, ob das Fenster bereits Vollbild ist oder nicht, also muss ich nicht raten.