Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil

Das GNOME-Projekt hat die erste stabile Version der Bibliothek Libadwaita veröffentlicht, die eine Sammlung von Komponenten zur Gestaltung von BenutzeroberflĂ€chen enthĂ€lt, die den Empfehlungen der GNOME HIG (Human Interface Guidelines) entsprechen. Die Bibliothek umfasst fertige Widgets und Objekte zur Erstellung von Anwendungen, die den einheitlichen GNOME-Stil reprĂ€sentieren und deren BenutzeroberflĂ€chen sich an Bildschirme jeder GrĂ¶ĂŸe anpassen können. Der Code der Bibliothek ist in C geschrieben und wird unter der LGPL 2.1+ Lizenz veröffentlicht.

Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil

Die Bibliothek libadwaita wird in Kombination mit GTK4 verwendet und enthĂ€lt die Komponenten des in GNOME verwendeten Adwaita-Themen, die aus GTK in eine separate Bibliothek ausgelagert wurden. Der Code von libadwaita basiert auf der Bibliothek libhandy und wird als Nachfolger dieser Bibliothek positioniert, die ursprĂŒnglich zur Erstellung adaptiver BenutzeroberflĂ€chen auf mobilen Plattformen mit GNOME-Technologien entwickelt wurde und in der GNOME-Umgebung Phosh fĂŒr das Smartphone Librem 5 verfeinert wurde.

Die Bibliothek enthĂ€lt standardisierte Widgets, die verschiedene Elemente der BenutzeroberflĂ€che abdecken, wie Listen, Panels, Bearbeitungsblöcke, Buttons, Tabs, Suchformulare, Dialogfenster usw. Die angebotenen Widgets ermöglichen die Erstellung universeller OberflĂ€chen, die sowohl auf großen Bildschirmen von PCs und Laptops als auch auf kleinen Touchscreens von Smartphones gleichmĂ€ĂŸig funktionieren. Die BenutzeroberflĂ€che der Anwendungen passt sich dynamisch an die BildschirmgrĂ¶ĂŸe und die verfĂŒgbaren EingabegerĂ€te an. Die Bibliothek umfasst außerdem ein Set von Adwaita-Stilen, die das Aussehen gemĂ€ĂŸ den Empfehlungen von GNOME anpassen, ohne dass eine manuelle Anpassung erforderlich ist.

Die Auslagerung der GNOME-Design-Elemente in eine separate Bibliothek ermöglicht es, notwendige Änderungen fĂŒr GNOME unabhĂ€ngig von GTK zu entwickeln. Dies gibt GTK-Entwicklern die Möglichkeit, sich auf die Kernaspekte zu konzentrieren, wĂ€hrend GNOME-Entwickler notwendige Anpassungen im Design schneller und flexibler vorantreiben können, ohne GTK selbst zu beeinflussen. Dennoch bringt dieser Ansatz Herausforderungen fĂŒr Entwickler von Drittanbieter-Desktop-Umgebungen mit sich, die auf GTK basieren. Sie sind gezwungen, entweder libadwaita zu nutzen und sich an die Besonderheiten von GNOME anzupassen, wodurch sie dessen Design replizieren, oder eine eigene Stilbibliothek fĂŒr GTK zu entwickeln, wobei sie akzeptieren mĂŒssen, dass GNOME-Anwendungen in Umgebungen mit alternativen Stilbibliotheken inkonsistent aussehen werden.

Das Hauptanliegen der Entwickler von Drittanbieterumgebungen betrifft die Probleme mit der Neudefinition der Farben von BenutzeroberflĂ€chenelementen. Die Entwickler von libadwaita arbeiten jedoch an der Bereitstellung einer API fĂŒr eine flexible Farbverwaltung, die in einer der nĂ€chsten Versionen enthalten sein wird. Unter den ungelösten Problemen wird auch die ordnungsgemĂ€ĂŸe Funktionsweise von Gestensteuerungs-Widgets auf Touchscreens genannt — fĂŒr Touchpads wird diese ordnungsgemĂ€ĂŸe FunktionalitĂ€t spĂ€ter umgesetzt, da Änderungen an GTK erforderlich sind.

Die wichtigsten Änderungen in libadwaita im Vergleich zu libhandy:

  • Ein vollstĂ€ndig ĂŒberarbeitetes Styleset. Das in GNOME verwendete Adwaita-Design wurde aus GTK herausgenommen und modernisiert, wĂ€hrend das alte Design in GTK unter dem Namen „Default“ festgelegt wurde. Zu den auffĂ€lligsten Unterschieden zwischen libadwaita und dem Design „Default“ gehört die Änderung der FensterĂŒberschriften.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Die Mechanismen zur Bindung von Farben an Elemente und zum Wechseln von Farben wĂ€hrend der Anwendung wurden geĂ€ndert (die Probleme hĂ€ngen damit zusammen, dass libadwaita auf SCSS umgestellt hat, was eine NeuĂŒbersetzung zum Austausch von Farben erfordert). Um die Farben von Elementen zu Ă€ndern, was beispielsweise in GNOME Web erforderlich ist, um den Wechsel in den Inkognito-Modus zu markieren, wurde eine Methode angewendet, die in elementary OS vorgeschlagen wurde und auf der Festlegung einer festen Liste von benannten Farben ĂŒber „@define-color“ basiert. Dabei werden die Farben vieler Benutzerschnittstellenelemente jetzt relativ zur Basisfarbe des Textes berechnet und automatisch geĂ€ndert, was es den Anwendungen nicht ermöglicht, das Farbschema vollstĂ€ndig zu steuern (die Entwickler arbeiten daran, diese EinschrĂ€nkung zu beheben).
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-StilDie Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Die AnzeigequalitĂ€t bei der Verwendung von dunklen Themes wurde durch eine kontrastreichere Hervorhebung von Elementen verbessert. Die Akzentfarbe wurde heller gestaltet, und es wurde eine weitere Farbe zur Hervorhebung hinzugefĂŒgt, die fĂŒr dunkle und helle Themes variieren kann.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-StilDie Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Eine große Anzahl neuer Stylesheet-Klassen wurde fĂŒr die Nutzung in Anwendungen hinzugefĂŒgt. Zum Beispiel „.pill“ fĂŒr große, abgerundete SchaltflĂ€chen, die Verwendung von „.flat“ in GtkHeaderBar, „.accent“ zur Festlegung der Akzentfarbe in Labels, „.numeric“ fĂŒr tabellarische Typografie und „.card“ fĂŒr die Verwendung von Hintergrund und Schatten in Listen.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Große monolithische SCSS-Dateien wurden in eine Sammlung kleinerer Stylesheet-Dateien aufgeteilt.
  • Eine API zur Anpassung des Dunkelmodus und des Hochkontrastmodus wurde hinzugefĂŒgt.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Die Dokumentation wurde ĂŒberarbeitet, fĂŒr deren Generierung nun das Tool gi-docgen verwendet wird.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Eine API fĂŒr Animationen wurde hinzugefĂŒgt, die zur Erstellung von Übergangseffekten beim Wechsel von einem Zustand zu einem anderen sowie zur Erstellung von federnden Effekten (spring animation) verwendet werden kann.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • FĂŒr Tabs basierend auf AdwViewSwitcher wurde die Möglichkeit hinzugefĂŒgt, Labels mit der Anzahl ungelesener Benachrichtigungen anzuzeigen.
    Die Veröffentlichung der Bibliothek Libadwaita 1.0 zur Erstellung von BenutzeroberflÀchen im GNOME-Stil
  • Die Klasse AdwApplication (Unterklasse von GtkApplication) wurde hinzugefĂŒgt, um die automatische Initialisierung von Libadwaita und das Laden der Styles zu ermöglichen.
  • Eine Sammlung von Widgets wurde hinzugefĂŒgt, um gĂ€ngige Operationen zu erleichtern: AdwWindowTitle zur Festlegung des Fenstertitels, AdwBin zur Vereinfachung der Erstellung von Unterklassen, AdwSplitButton fĂŒr kombinierte SchaltflĂ€chen und AdwButtonContent fĂŒr SchaltflĂ€chen mit Symbol und Beschriftung.
  • Die API wurde bereinigt.

Quelle: opennet.ru

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster