Kundenseitige Dekoration
Kundenseitige Dekoration (CSD) ist das Konzept, a zuzulassen grafisch Anwendungssoftware verantwortlich sein, sich selbst zu zeichnen Fensterdekorationen, historisch die Verantwortung der Verantwortung der Fenstermanager.[1]
Manchmal wird die kundenseitige Dekoration verwendet, um auf die Anwendungen zu verweisen, die keine herkömmliche Titelleiste haben. Dies ist jedoch ein Missbrauch des Ausdrucks, da selbst Anwendungen mit einer grundlegenden Titelleiste die Kundenseite dekoriert werden können.[2]
Durch die Verwendung von clientseitigen Dekorationen anstelle einer herkömmlichen Server-Seiten-Dekoration können Anwendungen ihre eigene Titelleiste zeichnen, wodurch eine breite Palette von Möglichkeiten zum Anpassen von Fensterdekorationen und zusätzliche Funktionen (zusätzliche Funktionen (Grafische Kontrollelemente) In eine sonstige typische Fenstermanagerleiste mit viel leerem Speicherplatz in den maximierten Fenstern.[3]
Terminologie
In Linux und Unix-artig Systeme heißt es Kundenseitige Dekoration was kommt von X Fenstersystem, wo ein Client die Anwendung ist, die ein Fenster rendert und es an den X -Server sendet. Die Alternative heißt Serverseitige Dekoration (SSD) Obwohl auf X die Dekoration vom Fenstermanager gezeichnet wird, ist dies nicht der "Server".
Implementierungen
Widget -Toolkits
Gtk
Gtk war das erste GUI-Toolkit unter Linux, das die clientseitige Dekoration mithilfe des GTKHeaderbar-Widgets implementierte.[4]
GtkHeaderbar verschmiert die Titelleiste, Menüleiste und Werkzeugleiste in eine einheitliche horizontale Balken, um dem Anwendungsgehalt mehr Platz zu geben, wodurch möglicherweise die Menge des verschwendeten Raums durch die Anzeige leerer Balken verringert wird. Dies kann dazu beitragen, eine flexible Benutzeroberfläche und ein konsistentes UX über verschiedene Personen zu erzielen Computerformfaktoren von Desktop -Systemen bis kleiner Formfaktor Geräte durch Entfernen der herkömmlichen Desktop-orientierten Teile aus Anwendungen. Diese haben erstklassige Unterstützung in Gnomschale und werden weit verbreitet von GNOME -Anwendungen.
UWP
Universelle Windows -Plattform Anwendungen können ihre eigenen Titelbalken zeichnen.[5]
Mac OS
Im Mac OS, Appkit Anwendungen verwenden clientseitige Dekoration, wenn das NSWindow-Widget verwendet wird.[6]
Elektron
Elektron hat die Möglichkeit, ein rahmenloses Fenster (ohne Symbolleiste, Menüleiste, Registerkarten) zu verwenden. Die Anwendung ist jedoch für das Zeichnen ihrer eigenen Schatten verantwortlich.[7]
Deepin Tool Kit
Deepin Werkzeugkit ist ein kleines modifiziert Widget Toolkit bezogen auf Qt5, es wird von verwendet von Deepin Desktop -Umgebung.
Anwendungen
Bemerkenswerte Anwendungen mit clientseitiger Dekoration:
- Dampf, benutzt seine eigene Widget Toolkit genannt "vgui".
- Feuerfuchs Verwendet clientseitige Dekorationen, wenn die Titelleiste deaktiviert ist.
- Google Chrome und andere Chrom Basierte Browser verwenden clientseitige Dekorationen unter Windows und MacOS und unterstützen sowohl Client- als auch Serverdekorationen unter Linux.
Server anzeigen
Wayland
Wayland wurde für clientseitige Dekorationen (einschließlich der Schatten von Windows) standardmäßig konzipiert, verfügt jedoch über ein optionales Protokoll, das als XDG-Dekoration bezeichnet wird, mit dem eine Anwendung (Client) abfragt Also, damit ein Kunde es anfordert.[8] Murmeln, der Kompositor verwendet von Gnomschale, unter Wayland unterstützt nur die Kundenneitendekoration,[9] während Kwin Unterstützt sowohl Client- als auch Server -Seitendekoration.
Geschichte
- In 2008 Adobe veröffentlicht Photoshop CS4, das kundenseitige Dekorationen verwendet.
- In 2012 Microsoft Verwendet kundenseitige Dekorationen in ihren neuen Metro Designsprache durch Hinzufügen von Symbolleistenobjekten wie Back -Schaltflächen zur Windows -Titelleiste.
- 2013 fügte GTK die Unterstützung für kundenseitige Dekorationen mit der Veröffentlichung von GTK 3.10 hinzu.[10]
Siehe auch
Verweise
- ^ "Kundenseitige Dekorationen, Fortsetzung". blogs.gnome.org. Abgerufen 2019-01-17.
- ^ "Eine kleine Notiz zu Fensterdekorationen | Florian Müllner". Abgerufen 2019-11-13.
- ^ "Die CSD -Initiative drängt auf Apps, Titelbalken zugunsten von Header -Bars - Phoronix - aufzugeben.". Phoronix. Abgerufen 2018-01-28.
- ^ "GTKHeaderBar: GTK+ 3 Referenzhandbuch". Entwickler.gnome.org. Abgerufen 2019-01-17.
- ^ Mijacobs. "Titelliehbleisanpassung - Windows UWP -Anwendungen". docs.microsoft.com. Abgerufen 2019-01-17.
- ^ "Nswindow - Appkit | Apple Developer -Dokumentation". Entwickler.apple.com. Abgerufen 2019-06-07.
- ^ "Rahmenloses Fenster | Elektron". Electronjs.org. Abgerufen 2019-01-17.
- ^ Wayland -Protokollentwicklung, Wayland, 2019-10-07, abgerufen 2019-11-13
- ^ Bernard, Tobias. "Einführung der CSD -Initiative - Raum und Bedeutung". Gnom. Abgerufen 2018-01-28.
- ^ "GTK+ 3.10 veröffentlicht [lwn.net]". lwn.net. Abgerufen 2019-01-17.