Benötigt ein X-Client unbedingt einen Fenstermanager? Kann ein X-Client nur mit dem X-Server arbeiten?
Wenn ein X-Client kein Fenster hat , braucht er einen Fenstermanager , um zu funktionieren?
Wenn ein X-Client ohne Fenstermanager arbeiten kann, muss der X-Client dann kein Fenster haben?
Vielen Dank.
x11
window-manager
Tim
quelle
quelle
Antworten:
Gut geschriebene Apps benötigen keinen Fenstermanager.
Einige "moderne" defekte Apps funktionieren jedoch nicht ohne einen Fenstermanager (z. B. Firefox und seine Adressleistenvorschläge, die nicht herunterfallen [1]).
Viele andere untergeordnete Apps setzen nicht nur einen Fenstermanager voraus , sondern auch einen Klick, um den Fenstermanager zu fokussieren . Früher war es zum Beispiel so, dass jede Java-App beim Start einfach den Fokus stiehlt.
Wenn Sie testen möchten, installieren Sie
Xephyr
(einen "verschachtelten" X11-Server), führen Sie ihn mit ausXephyr :1
und starten Sie dann Ihre Apps mitDISPLAY=:1
in ihrer Umgebung.[1] Die "fantastische Leiste" von Firefox öffnet ihren Vorschlagsbereich nicht, wenn sie in den Verlaufs-Button eingegeben oder darauf geklickt wird, es sei denn, ein Fenstermanager wird ausgeführt. Das Auto-Hide-Menü funktioniert auch nicht.
quelle
Nein, Sie müssen keinen Fenstermanager ausführen, damit ein X-Client ausgeführt werden kann. Einige Systeme bieten die Möglichkeit, ein Terminal nur beim Start auszuführen, und von dort aus können Sie zusätzliche Programme, einschließlich Fenstermanagern, starten. Einige Kiosk-Setups, bei denen nur eine Anwendung ausgeführt werden soll, benötigen keinen Fenstermanager. Einige Implementierungen von X für Microsoft Windows vermeiden einen X Window Manager, indem das Betriebssystem die Fenster verwalten kann.
Ohne einen Fenstermanager müssen Sie in der Regel die Geometrie für die Programme angeben, damit nicht alles in der oberen linken Ecke platziert wird.
In X ist der Fenstermanager nur ein weiterer X-Client. Dies war zu dieser Zeit ungewöhnlich, machte es jedoch einfach, verschiedene Fenstermanager zu haben.
Eine andere Möglichkeit, die Frage zu betrachten, besteht darin, zu beobachten, dass Sie den Fenstermanager im laufenden Betrieb wechseln können, so dass zwischen dem ersten Stopp und dem zweiten die Steuerung liegt. Da jedoch alle Ihre Anwendungen nicht abstürzen, müssen sie in der Lage sein ohne zu arbeiten.
quelle
Ein Fenstermanager ist eine Annehmlichkeit für Benutzer.
In den guten alten Tagen hatte ich eine
~/.Xclients
Datei, die lautete:Diese Datei würde ausgeführt, wenn ich X mit starte
startx
. Wenn dieses Skript beendet ist, wird der X-Server heruntergefahren.Beachten Sie die letzte Zeile:
exec .../fvwm
. Dies ist die Zeile, die meinen Fenstermanager (fvwm) gestartet hat. Alle bisherigen Anwendungen (xv
,xterm
,xclock
,xscreensaver
) ausgeführt wurden , bevor der Window - Manager gestartet. Da der Anruf beifvwm
die letzte Zeile war und nicht in den Hintergrund gestellt wurde, bedeutete dies, dassfvwm
X bei Beendigung schließen würde.Der X-Start hatte sogar einen "Fallback" -Standard ... wenn keine Konfigurationsdateien vorhanden waren, starten Sie X mit einer einzigen
xterm
Ausführung. Wenn Sie dies schließen, wirdxterm
die X-Sitzung beendet.quelle
fvwm
(und ausführenexec
), stellen wir sicher, dass es immer noch einen Prozess gibt, der das Herunterfahren des X-Servers verhindert. Wenn Sie diesen letzten Vorgangfvwm
ausführen, kann ein Menüelement "Beenden" wie erwartet ausgeführt werden.fvwm-1.24r
war mein Lieblingsfenstermanager :-)Um anderen Antworten hinzuzufügen, habe ich eine Open-Source-App entwickelt und veröffentlicht, die ohne Fenstermanager funktioniert (dh, Sie können sie direkt von xinitrc aus starten). Es gibt einige zusätzliche Schritte, die die Anwendung in diesem Fall ausführen sollte, neben der Verwaltung der Geometrie und der Z-Reihenfolge ihrer Dialoge, dies ist jedoch völlig verwaltbar.
quelle
Hier gibt es viele gute detaillierte Antworten. Hier ist die einfache klare Antwort.
Nein: Aber ohne, wenn Sie Schwierigkeiten haben, Ihre Fenster zu verwalten (Verschieben, Ändern der Größe, Senken, Anheben usw.). Es gibt andere Tools, die dies tun können, wenn Sie es brauchen.
Ja
Wenn es keine Fenster gibt, sollte es keinen Nachteil geben, keinen Fenstermanager zu haben.
Nein, es kann Fenster geben.
Versuche dies.
dann im neuen
xterm
typfvwm
.Sie können installieren müssen
vncserver
,ssvnc
undfvwm
, zuerst.quelle
Ja, ein X-Client kann nur mit dem X-Server arbeiten. Als Beispiel gebe ich meinen virtuellen Maschinen eine eigene virtuelle Konsole auf dem Host.
Der Befehl "startx" startet den Xorg X-Server auf den Anzeigen: 4 und: 5 nur mit virt-viewer als Client.
"CentOS" und "Windows" sind die Namen, die ich meinen virtuellen Maschinen bei der Installation gegeben habe. Mit der Option -k für virt-viewer wird der gesamte Bildschirm mit minimalen Steuerelementen angezeigt, sodass jeder virtuellen Maschine scheinbar der Computer gehört, bis ich STRG-ALT-Fn drücke, um zu einer anderen virtuellen Konsole zu wechseln.
Natürlich führt CentOS einen Display-Manager und einen Window-Manager in der virtuellen Maschine aus, aber das hat keine Verbindung mit dem X-Server, der auf dem Host ausgeführt wird.
quelle