A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához

A GNOME projekt közzétette a Libadwaita könyvtár első stabil kiadását, amely a felhasználói felület stílusának kialakításához szükséges komponenseket tartalmaz a GNOME HIG (Human Interface Guidelines) irányelveivel összhangban. A könyvtár kész widgeteket és objektumokat tartalmaz alkalmazások létrehozásához, amelyek megfelelnek a GNOME általános stílusának, és amelyek felülete alkalmazkodik bármilyen méretű képernyőhöz. A könyvtár kódja C nyelven íródott, és LGPL 2.1+ licenc alatt terjesztik.

A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához

A libadwaita könyvtár a GTK4-el együtt használható, és tartalmazza a GNOME téma Adwaita komponenseit, amelyeket a GTK-ból külön könyvtárba emeltek. A libadwaita kódja a libhandy könyvtárra épül, és úgy pozicionálják, mint ami a meghatározott könyvtár helyébe lép, amelyet eredetileg a GNOME technológiákon alapuló mobil platformok adaptív felületének létrehozására hoztak létre, és amelyet a GNOME Phosh környezetében finomítottak a Librem 5 okostelefonhoz.

A könyvtár tartalmaz tipikus widgeteket, amelyek különféle felületi elemeket ölelnek fel, például listákat, paneleket, szerkesztő blokkokat, gombokat, lapokat, kereső űrlapokat, párbeszédpanelek stb. A javasolt widgetek lehetővé teszik univerzális felületek létrehozását, amelyek zökkenőmentesen működnek nagy képernyős PC-ken és laptopokon, valamint kisméretű érintőképernyős okostelefonokon. Az alkalmazások felülete dinamikusan változik a képernyő mérete és az elérhető bemeneti eszközök szerint. A könyvtár emellett tartalmazza az Adwaita stílusok halmazát is, amelyek megjelenését a GNOME irányelveivel összhangba hozzák, kézi alkalmazkodás nélkül.

A GNOME vizuális elemeinek külön könyvtárba való áthelyezése lehetővé teszi a GNOME-hoz szükséges módosítások fejlesztését a GTK-tól függetlenül, így a GTK fejlesztői a alapvető dolgokra összpontosíthatnak, míg a GNOME fejlesztői gyorsabban és rugalmasabban haladhatnak a saját stílusuk szükséges változásaival anélkül, hogy a GTK-ra hatással lennének. Ugyanakkor ez a megközelítés nehézségeket okoz a GTK alapú harmadik féltől származó felhasználói környezetek fejlesztőinek, akiknek vagy a libadwaita-t kell használniuk és alkalmazkodniuk a GNOME sajátosságaihoz, illetve annak megjelenéséhez, vagy saját stíluskönyvtáruk fejlesztésére kell vállalkozniuk, belenyugodva abba, hogy a GNOME alkalmazások nem egységesen fognak kinézni a harmadik féltől származó stíluskönyvtárakat használó környezetekben.

A harmadik fél környezetek fejlesztőinek legnagyobb elégedetlensége a felhasználói felület elemeinek színátírásával kapcsolatos problémákra vonatkozik, de a libadwaita fejlesztői dolgoznak egy API biztosításán a színek rugalmas kezelésére, amely a következő kiadások egyikében kerül bevezetésre. A megoldatlan problémák között említést nyert a gesztusvezérlő widgetek helyes működése csak érintőképernyőkön — a touchpadokra később kerül a megoldás, mivel ez a GTK-n végrehajtandó változtatásokat igényel.

A libadwaita legfontosabb változásai a libhandy-hoz képest:

  • Teljesen átdolgozott stíluskészlet. A GNOME által használt Adwaita téma eltávolításra került a GTK-ból és korszerűsítették, míg a régi téma a GTK-ban megmaradt "Default" néven. A libadwaita legszembetűnőbb különbségei között említhető az ablakok címsorának megjelenésének megváltozása.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • A színek elemekhez való kapcsolásának és a színek alkalmazás közbeni váltásának mechanizmusai megváltoztak (a problémák azért merültek fel, mert a libadwaita SCSS-re váltott, ami újraépítést igényel a színcseréhez). Az elemek színeinek módosításához, ami például a GNOME Web esetében szükséges az inkognitó módba való váltáshoz, az elementary OS által javasolt módszert alkalmazták, amely fix névlisták megadásán alapul a „@define-color” segítségével. Eközben a felhasználói felület sok elemének színe most a szöveg alap színéhez viszonyítva számítódik ki, és automatikusan változik, ami megakadályozza, hogy az alkalmazások teljes mértékben irányítsák a színsémát (a fejlesztők dolgoznak ezen korlátozás megszüntetésén).
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásáhozA Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • A sötét témák használatakor a megjelenés minősége javult a elemek kontrasztosabb kiemelésének köszönhetően. Az akcentus színe (accent) világosabb lett, és egy új kiemelő szín is hozzáadódott, amely változhat a sötét és világos témák esetében.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásáhozA Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • Számos új stílusosztály került hozzáadásra az alkalmazások használatához. Például a „.pill” nagy kerekített gombokhoz, a „.flat” használatának lehetősége a GtkHeaderBar-ban, a „.accent” a kiemelő szín beállításához a címkékben, a „.numeric” táblázatos tipográfiához, a „.card” háttér és árnyék használatához listaelemekben.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • A nagy monolitikus SCSS fájlok egy kollekcióra lettek bontva, amely apró stílusfájlokból áll.
  • API készült a sötét stílus és a magas kontrasztú mód testreszabására.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • A dokumentáció újragondolása megtörtént, amelynek generálásához most a gi-docgen eszközt használják.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • Egy új API került hozzáadásra az animációhoz, amelyet átmeneti hatások létrehozására lehet használni az egyik állapot átváltoztatásakor, valamint rugós animációk létrehozásához (spring animation).
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • Az AdwViewSwitcher alapú fülekhez lehetőség került hozzáadásra, amely megjeleníti a nem olvasott értesítések számát.
    A Libadwaita 1.0 könyvtár kiadása a GNOME stílusú felületek létrehozásához
  • Hozzáadásra került az AdwApplication osztály (a GtkApplication származéka), amely automatikusan inicializálja a Libadwaitát és betölti a stílusokat.
  • Összegyűjtésre került egy widgetgyűjtemény, amely megkönnyíti a tipikus műveleteket: AdwWindowTitle az ablak címének beállításához, AdwBin a gyerekosztályok egyszerűsített létrehozásához, AdwSplitButton a kombinált gombokhoz, AdwButtonContent gombokhoz ikonokkal és címkékkel.
  • API tisztítás történt.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster