Veröffentlichung der Bibliothek Libadwaita 1.5 zur Erstellung von GNOME-Stil-OberflÀchen

Das GNOME-Projekt hat die Bibliothek Libadwaita 1.5 veröffentlicht, die eine Reihe von Komponenten fĂŒr das Design von BenutzeroberflĂ€chen enthĂ€lt, die den Empfehlungen der GNOME HIG (Human Interface Guidelines) entsprechen. Die Bibliothek umfasst fertige Widgets und Objekte zum Erstellen von Anwendungen, die dem allgemeinen Stil von GNOME entsprechen und deren Schnittstellen sich an Bildschirme jeder GrĂ¶ĂŸe anpassen können. Der Code der Bibliothek ist in der Programmiersprache C geschrieben und wird unter der LGPL 2.1+ Lizenz verteilt.

Die Bibliothek libadwaita wird zusammen mit GTK4 verwendet und umfasst Komponenten des in GNOME genutzten Adwaita-Thema, die aus GTK in eine separate Bibliothek ausgelagert wurden. Die Auslagerung der visuellen Elemente von GNOME in eine separate Bibliothek ermöglicht es, notwendige Änderungen fĂŒr GNOME unabhĂ€ngig von GTK zu entwickeln, was den GTK-Entwicklern die Konzentration auf grundlegende Aspekte ermöglicht, wĂ€hrend den GNOME-Entwicklern ein schnellerer und flexiblerer Fortschritt bei den benötigten Änderungen der stilistischen Gestaltung ermöglicht wird, ohne GTK selbst zu beeintrĂ€chtigen.

Die Bibliothek umfasst Standard-Widgets, die verschiedene Interface-Elemente abdecken, wie Listen, Panels, Bearbeitungsfelder, SchaltflĂ€chen, Tabs, Suchformulare, Dialogfenster usw. Die angebotenen Widgets ermöglichen die Erstellung vielseitiger OberflĂ€chen, die sowohl auf großen Bildschirmen von PCs und Laptops als auch auf kleinen Touchscreens von Smartphones harmonisch funktionieren. Die BenutzeroberflĂ€che von Anwendungen Ă€ndert sich dynamisch in AbhĂ€ngigkeit von der BildschirmgrĂ¶ĂŸe und den verfĂŒgbaren EingabegerĂ€ten. Die Bibliothek umfasst auch einen Satz von Adwaita-Stilen, die das Erscheinungsbild gemĂ€ĂŸ den Empfehlungen von GNOME anpassen, ohne manuelle Anpassungen vornehmen zu mĂŒssen.

Veröffentlichung der Bibliothek Libadwaita 1.5 zur Erstellung von GNOME-Stil-OberflÀchen

Die wichtigste Neuerung in libadwaita 1.5 ist die Überarbeitung von anpassungsfĂ€higen Widgets zur Erstellung von Dialogfenstern, die sich an die GrĂ¶ĂŸe des sichtbaren Bereichs anpassen. Im Gegensatz zu herkömmlichen Dialogen, die in separaten Fenstern platziert werden, werden neue Dialoge auf der Client-Seite gebildet, innerhalb bestehender Fenster gezeichnet und dĂŒrfen die Grenzen des ĂŒbergeordneten Fensters nicht ĂŒberschreiten. Dieser Ansatz vereinfacht die Erstellung universeller Dialoge, die sowohl mit mobilen als auch mit Desktop-Schnittstellen harmonieren, und bietet zusĂ€tzliche Möglichkeiten zur Steuerung der Dialoge (zum Beispiel ist es nicht erforderlich, das Verlassen des Fensters zu verfolgen, das Verhalten bezĂŒglich der SchaltflĂ€chen zum Schließen kann gewĂ€hlt werden, es erfolgt eine automatische Vollbilddarstellung in mobilen Versionen von Anwendungen, und der Stil des aktuellen Fensters anstelle des Systems wird beim Abdunkeln des Dialogs berĂŒcksichtigt).

Veröffentlichung der Bibliothek Libadwaita 1.5 zur Erstellung von GNOME-Stil-OberflÀchen Veröffentlichung der Bibliothek Libadwaita 1.5 zur Erstellung von GNOME-Stil-OberflÀchen

In Zukunft wird ein weiteres Modell solcher Dialoge geplant, das nicht an Fenster, sondern an Registerkarten innerhalb eines Fensters gebunden ist, was in Anwendungen wie Browsern von Bedeutung sein könnte, um sicherzustellen, dass Dialoge im Zusammenhang mit Registerkarten das Hauptfenster beim Wechseln zwischen den Registerkarten nicht ĂŒberdecken.

FĂŒr mobile GerĂ€te wurde die UnterstĂŒtzung fĂŒr die Anzeige von Dialogen in Form von BlĂ€ttern implementiert, die am unteren Bildschirmrand fixiert sind (Bottom Sheets) anstelle von zentrierten BlĂ€ttern. Am unteren Bildschirmrand befestigte Dialoge befreien die Benutzer von Verwirrungen beim Schließen von Fenstern – in solchen Dialogen bleibt ein Teil des ĂŒbergeordneten Fensters sichtbar und die SchaltflĂ€chen zum Schließen des ĂŒbergeordneten Fensters sowie des Dialogs sind deutlich getrennt, sodass sie nun schwer zu verwechseln sind.

Veröffentlichung der Bibliothek Libadwaita 1.5 zur Erstellung von GNOME-Stil-OberflÀchen

Die Verwaltung neuer Dialoge erfolgt ĂŒber die Klasse AdwDialog, deren Verwendung in den meisten Situationen der Arbeit mit der Klasse GtkWindow Ă€hnelt, wobei die Unterschiede vor allem in den Anzeige- und SchließvorgĂ€ngen bestehen. So wurde beispielsweise die Eigenschaft „:transient-for“ durch einen Parameter in der Funktion adw_dialog_present() ersetzt, ein neues Signal „::close-attempt“ hinzugefĂŒgt und die Behandlung des Parameters „:can-close“ geĂ€ndert. Statt der Klassen AdwPreferencesWindow, AdwAboutWindow und AdwMessageDialog wird empfohlen, die Klassen AdwPreferencesDialog, AdwAboutDialog und AdwAlertDialog zu verwenden.

Dialoge, die kein ĂŒbergeordnetes Fenster haben, werden weiterhin als separate Fenster behandelt. Auch Dialoge, deren ĂŒbergeordnete Fenster nicht zur Platzierung von Dialogen verwendet werden können – beispielsweise, wenn sie keine GrĂ¶ĂŸenĂ€nderung zulassen oder die Klassen AdwWindow und AdwApplicationWindow fehlen – werden als Fenster fungieren.

Änderungen in Libadwaita 1.5, die nicht mit der Überarbeitung von Dialogen verbunden sind:

  • Der Klasse AdwEntryRow wurde die Eigenschaft „:text-length“ hinzugefĂŒgt, um die GrĂ¶ĂŸe des Textes im Eingabefeld zu beschrĂ€nken.
  • Der Klasse AdwMessageDialog wurde die Methode remove_response() hinzugefĂŒgt.
  • Der Klasse AdwBreakpointBin, die eine VerĂ€nderung der BenutzeroberflĂ€che je nach FenstergrĂ¶ĂŸe ermöglicht, wurde die Möglichkeit zur programmgesteuerten Entfernung von Haltepunkten hinzugefĂŒgt.
  • Der Klasse AdwSwipeTracker wurde das Flag „:allow-window-handle“ hinzugefĂŒgt, das das BlĂ€ttern ĂŒber die obere Leiste ermöglicht (nutzbar in BlĂ€ttern, die am unteren Rand angeheftet sind).
  • Die Helligkeit der Farben, die zur Abdunkelung von Fenstern im Dunkelmodus verwendet werden, wurde erhöht.

Quelle: opennet.ru

60GB SSD 8Gb DDR4