Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME

Projekt GNOME opublikował wydanie biblioteki Libadwaita 1.2, która zawiera zestaw komponentów do stylizacji interfejsu użytkownika zgodny z zaleceniami GNOME HIG (Human Interface Guidelines). Biblioteka zawiera gotowe widżety i obiekty do budowania aplikacji zgodnych z ogólnym stylem GNOME, których interfejs można responsywnie dostosowywać do ekranów o dowolnej wielkości. Kod biblioteki jest napisany w języku C i rozpowszechniany na licencji LGPL 2.1+.

Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME

Biblioteka libadwaita jest używana w połączeniu z GTK4 i zawiera komponenty skórki Adwaita używanej w GNOME, które zostały przeniesione z GTK do osobnej biblioteki. Przeniesienie elementów wizualnych GNOME do oddzielnej biblioteki umożliwia opracowywanie zmian wymaganych przez GNOME niezależnie od GTK, dzięki czemu programiści GTK mogą skupić się na podstawach, a programiści GNOME mogą szybciej i elastyczniej wprowadzać zmiany stylów bez wpływu na samo GTK.

Biblioteka zawiera standardowe widżety obejmujące różne elementy interfejsu, takie jak listy, panele, bloki edycyjne, przyciski, zakładki, formularze wyszukiwania, okna dialogowe itp. Proponowane widżety pozwalają na tworzenie uniwersalnych interfejsów, które bezproblemowo funkcjonują zarówno na dużych ekranach komputerów PC i laptopów, jak i na małych ekranach dotykowych smartfonów. Interfejs aplikacji zmienia się dynamicznie w zależności od wielkości ekranu i dostępnych urządzeń wejściowych. Biblioteka zawiera również zestaw stylów Adwaita, które dostosowują wygląd do wytycznych GNOME bez potrzeby ręcznego dostosowywania.

Główne zmiany w libadwaita 1.2:

  • Dodano widżet Adw.EntryRow, przeznaczony do wykorzystania jako element listy. Widget udostępnia pole wejściowe i nagłówek z możliwością dołączenia dodatkowych widgetów przed i po polu wejściowym (na przykład przycisków potwierdzających wprowadzenie danych lub wskaźnika możliwości edycji danych). Dodatkowo dostępna jest opcja Adw.PasswordEntryRow przeznaczona do wprowadzania haseł.
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME
  • Dodano widżet Adw.MessageDialog umożliwiający wyświetlenie okna dialogowego z wiadomością lub pytaniem. Widżet jest zaawansowanym zamiennikiem Gtk.MessageDialog pozwalającym dostosować układ elementów do wielkości okna. Przykładowo w szerokich oknach przyciski mogą być wyświetlane w jednej linii, natomiast w wąskich oknach można je podzielić na kilka kolumn. Kolejną różnicą jest to, że widget nie jest dzieckiem klasy GtkDialog i udostępnia zupełnie nowe API, które nie jest powiązane z predefiniowanymi typami przycisków GtkResponseType (w Adw.MessageDialog wszystkie akcje są obsługiwane przez aplikację), ułatwia osadzanie innych widżety korzystające z właściwości extra-child i udostępniają oddzielne style tytułu i tekstu podstawowego.
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME
  • Dodano widżet Adw.AboutWindow umożliwiający wyświetlenie okna z informacjami o programie. Widżet zastępuje Gtk.AboutDialog i oferuje adaptacyjny układ elementów oraz rozbudowane sekcje wsparcia, takie jak lista zmian, okno z podziękowaniami, informacje o licencjach komponentów innych firm, linki do zasobów informacyjnych i danych ułatwiających debugowanie.
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOMEWydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME
  • Rozszerzono możliwości widżetów Adw.TabView i Adw.TabBar, w którym przeprojektowano mechanizm przetwarzania skrótów klawiszowych, aby rozwiązać problem z działaniem kombinacji nakładających się na procedury obsługi GTK4 (np. Ctrl+Tab). Nowa wersja oferuje także możliwość ustawiania podpowiedzi dla wskaźników i przycisków zakładek.
  • Dodano klasę Adw.PropertyAnimationTarget, aby ułatwić animację właściwości obiektu.
  • Znacząco zmieniono styl paska zakładek (Adw.TabBar) - aktywna zakładka jest wyraźniej podświetlona i zwiększono kontrast elementów w wersji ciemnej.
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME
  • Zmniejszono wysokość pionowych podziałek, co pozwoliło nagłówkowi i paskowi wyszukiwania pozbyć się rozpraszających jasnych obramowań na rzecz ciemnych obramowań ustawionych za pomocą @headerbar_shade_color i dodać styl tła pasujący do paneli w nagłówku.
  • Klasa stylu „.large-title” została uznana za przestarzałą i zamiast niej należy używać klasy „.title-1”.
  • Dopełnienie widżetu Adw.ActionRow zostało zmniejszone, aby jego wygląd był bardziej zbliżony do paneli i widżetu Adw.EntryRow.
  • Widżety Gtk.Actionbar i Adw.ViewSwitcherBar korzystają z tych samych stylów co paski nagłówka, wyszukiwania i kart.
    Wydanie biblioteki Libadwaita 1.2 do tworzenia interfejsów w stylu GNOME

Źródło: opennet.ru

Dodaj komentarz