Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME

Projekt GNOME zveřejnil první stabilní verzi knihovny Libadwaita, která obsahuje sadu komponent pro stylování uživatelského rozhraní, které se řídí GNOME HIG (Human Interface Guidelines). Knihovna obsahuje hotové widgety a objekty pro vytváření aplikací, které odpovídají obecnému stylu GNOME, jejichž rozhraní lze adaptivně přizpůsobit obrazovkám libovolné velikosti. Kód knihovny je napsán v jazyce C a je distribuován pod licencí LGPL 2.1+.

Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME

Knihovna libadwaita se používá ve spojení s GTK4 a zahrnuje součásti tématu Adwaita používané v GNOME, které byly přesunuty z GTK do samostatné knihovny. Kód libadwaita je založen na knihovně libhandy a je umístěn jako nástupce této knihovny, která byla původně vytvořena za účelem vytvoření adaptivního rozhraní v mobilních platformách založených na technologiích GNOME a byla vypilována v prostředí Phosh GNOME pro smartphone Librem 5.

Knihovna obsahuje standardní widgety pokrývající různé prvky rozhraní, jako jsou seznamy, panely, editační bloky, tlačítka, karty, vyhledávací formuláře, dialogová okna atd. Navrhované widgety vám umožňují vytvářet univerzální rozhraní, která bezproblémově fungují jak na velkých obrazovkách PC a notebooků, tak na malých dotykových obrazovkách smartphonů. Rozhraní aplikace se dynamicky mění v závislosti na velikosti obrazovky a dostupných vstupních zařízeních. Knihovna také obsahuje sadu stylů Adwaita, které přizpůsobují vzhled pokynům GNOME bez nutnosti ruční úpravy.

Přesunutí prvků stylů GNOME do samostatné knihovny umožňuje, aby byly změny specifické pro GNOME vyvíjeny odděleně od GTK, což vývojářům GTK umožňuje soustředit se na základní věci a vývojářům GNOME rychleji a flexibilněji prosazovat změny stylů, které chtějí, aniž by to ovlivnilo samotné GTK. Tento přístup však způsobuje potíže vývojářům uživatelských prostředí založených na GTK třetích stran, kteří jsou nuceni buď použít libadwaita a přizpůsobit se funkcím GNOME a replikovat jeho design, nebo vyvinout vlastní verzi knihovny stylu GTK a přijmout vzhled aplikací GNOME heterogenní v prostředích založených na knihovnách stylů třetích stran.

Hlavní stížnost od vývojářů frameworku třetích stran se týká problémů s přepsáním barev prvků rozhraní, ale vývojáři libadwaita pracují na poskytnutí API pro flexibilní správu barev, které bude zahrnuto v budoucí verzi. Mezi nedořešenými problémy je zmíněno i správné fungování widgetů ovládání gesty pouze na dotykových displejích – u touchpadů bude správný chod takových widgetů zajištěn později, jelikož vyžadují změny GTK.

Hlavní změny v libadwaita ve srovnání s libhandy:

  • Kompletně přepracovaná sada stylů. Motiv Adwaita používaný v GNOME byl z GTK odstraněn a modernizován a staré téma bylo v GTK opraveno pod názvem „Výchozí“. Jedním z nejviditelnějších rozdílů mezi libadwaitou a tématem „Výchozí“ je změna v designu záhlaví oken.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Mechanismy vázání barev na prvky a změny barev za běhu aplikace byly změněny (problémy jsou způsobeny tím, že libadwaita přešla na SCSS, což vyžaduje přebudování pro změnu barev). Ke změně barev prvků, která je například vyžadována v GNOME Web pro označení přechodu do režimu inkognito, se používá metoda navržená v základním OS a je založena na zadání pevného seznamu pojmenovaných barev pomocí „@define-color“. Barvy mnoha prvků rozhraní se však nyní počítají vzhledem k základní barvě textu a mění se automaticky, což aplikacím neumožňuje plně ovládat barevné schéma (vývojáři pracují na odstranění tohoto omezení).
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOMEVydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Kvalita zobrazení byla zvýšena při použití tmavých motivů díky kontrastnějšímu zvýraznění prvků. Zvýrazňující barva byla jasnější a byla přidána další barva zvýraznění, která se může měnit u tmavých a světlých motivů.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOMEVydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Přidána velká část nových tříd stylů pro použití v aplikacích. Například „.pill“ pro velká zaoblená tlačítka, možnost použít „.flat“ v GtkHeaderBar, „.accent“ pro nastavení barvy zvýraznění ve štítcích, „.numeric“ pro typografii tabulky, „.card“ pro použití pozadí a stín jako v seznamech.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Velké monolitické soubory SCSS jsou rozděleny do kolekce menších souborů stylu.
  • Přidáno API pro nastavení stylu tmavého designu a režimu vysokého kontrastu.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Dokumentace byla přepracována, k jejímu vytvoření se nyní používá sada nástrojů gi-docgen.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Bylo přidáno animační API, které lze použít k vytváření přechodových efektů při nahrazení jednoho stavu jiným a také k vytváření jarní animace.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • U karet založených na AdwViewSwitcher byla přidána možnost zobrazení štítků s počtem neprohlížených upozornění.
    Vydání knihovny Libadwaita 1.0 pro vytváření rozhraní ve stylu GNOME
  • Přidána třída AdwApplication (podtřída GtkApplication) pro automatickou inicializaci Libadwaita a načítání stylů.
  • Byl přidán výběr widgetů pro zjednodušení standardních operací: AdwWindowTitle pro nastavení nadpisu okna, AdwBin pro zjednodušení vytváření podtříd podtříd, AdwSplitButton pro kombinovaná tlačítka, AdwButtonContent pro tlačítka s ikonou a štítkem.
  • API vyčištěno.

Zdroj: opennet.ru

Přidat komentář