Projekti GNOME publikoi versionin e bibliotekës Libadwaita 1.8, e cila përfshin një grup komponentësh për stilizimin e ndërfaqes së përdoruesit, që i përmbahen rekomandimeve GNOME HIG (Rregullat e Ndërfaqes për Njerëzit). Biblioteka përfshin widget-e dhe objekte të gatshme për ndërtimin e aplikacioneve që përputhen me stilin e përgjithshëm të GNOME, ndëfaqja e të cilëve mund të adaptohet në mënyrë responsive për ekrane të çdo madhësie. Kodi i bibliotekës është shkruar në gjuhën C dhe shpërndahet nën licencën LGPL 2.1+.
Biblioteka libadwaita përdoret në bashkëpunim me GTK4 dhe përfshin komponentët e temës së përdorur në GNOME, Adwaita, të cilat janë nxjerrë nga GTK në një bibliotekë të veçantë. Nxjerrja e elementeve të paraqitjes vizuale të GNOME në një bibliotekë të veçantë lejon zhvillimin e ndryshimeve të nevojshme për GNOME veçmas nga GTK, duke u dhënë mundësi zhvilluesve të GTK të përqendrohen në gjërat baza, ndërsa zhvilluesit e GNOME të avancojnë më shpejt dhe fleksibël ndryshimet e nevojshme për stilizimin e tyre, pa prekur vetë GTK.
Biblioteka përfshin widget-e standarde që mbulojnë elemente të ndryshme të ndërfaqes, si lista, panelet, blloqet e redaktimit, butonat, skedat, format e kërkimit, dritaret dialoguese e të tjera. Widget-at e propozuara lejojnë krijimin e ndërfaqeve universale, të cilat funksionojnë organikisht si në ekranet e mëdha të PC-ve dhe laptopëve, ashtu edhe në ekranet e vogla të prekes për smartphone. Ndëfaqja e aplikacioneve ndryshon dinamikisht në varësi të madhësisë së ekranit dhe pajisjeve të disponueshme të hyrjes. Biblioteka gjithashtu përfshin një grup stilesh Adwaita, që i sjell pamjet në përputhje me rekomandimet GNOME, pa pasur nevojë për adaptim manual.

NĂ« versionin e ri:
- Në vend të klasës GtkShortcutsWindow, e cila është shpallur e vjetruar në GTK 4.18, në Libadwaita është implementuar klasa e re AdwShortcutsDialog me një dialog për navigimin në kombinimet e mundshme të çelësve. Implementimi i ri karakterizohet nga një riparim i plotë dhe thjeshtim të logjikës së ndarjes në seksione dhe grupe. Zhvilluesi merr një API minimal, dhe për përcaktimin e strukturës dhe përmbajtjes së dialogut përdoren skedarë UI.
Në vend të GtkShortcutLabel, për paraqitjen e elementeve është propozuar klasa e re AwsShortcutLabel, e cila nuk mbështet caktimin e informacionit për gjestet e ekranit dhe integrimin e ikonave, pasi përdorimi i tyre shkaktonte konfuzion dhe aplikimi ishte i kufizuar (p.sh., ikonat përdoreshin vetëm në aplikacionin gnome-games për të shënuar butonat e gamepad-ëve).

- Shtesa e mundĂ«sisĂ« pĂ«r pĂ«rdorimin e media-kĂ«rkesave CSS pĂ«r tĂ« pĂ«rcaktuar stilet e paraqitjes sĂ« errĂ«t dhe tĂ« ndritshme, si dhe paraqitjen normale dhe kontrastante tĂ« njĂ«jtit element. JanĂ« ndarĂ« madhĂ«sitĂ« e shkrimit pĂ«r pĂ«rmbajtjen (Adwaita Sans 12pt) dhe ndĂ«rfaqen (Adwaita Sans 11pt). ĂshtĂ« shtuar klasa stilore «.document», nĂ« tĂ« cilĂ«n pĂ«r lexueshmĂ«ri mĂ« tĂ« mirĂ« pĂ«rdoret shkrimi Adwaita Sans 12pt dhe Ă«shtĂ« rritur hapĂ«sira midis rreshtave. HapĂ«sira midis rreshtave nĂ« klasĂ«n stilore «.body» Ă«shtĂ« rritur, e cila tani aplikohet siç Ă«shtĂ« paraparĂ« nĂ« disa widget-e standard.

- Klasa AdwPreferencesGroup lejohet tĂ« pĂ«rdoret me modelet e listave pĂ«rmes metodĂ«s adw_preferences_group_bind_model(). ĂshtĂ« shtuar gjithashtu mundĂ«sia pĂ«r tĂ« shtuar nĂ« listĂ«n e brendshme rreshta qĂ« nuk janĂ« klasĂ« AdwPreferencesRow.
- Në klasën AdwPreferencesPage lejohet të fusësh grupe kudo, jo vetëm në fund të faqes.
- Në klasat AdwPreferencesGroup dhe AdwPreferencesPage janë shtuar metodat adw_preferences_page_get_group() dhe adw_preferences_group_get_row() për inspektimin e grupeve dhe rreshtave.
- Në klasën AdwWrapBox është shtuar metoda adw_wrap_box_remove_all() për të hequr të gjitha elementet fëmijë.
- Për elementet fëmijë të klasës GtkFlowBox, stilet për theksimin e kalimit të miut mbi elementin dhe aktivizimin e elementit janë ofruar si parazgjedhje.
- Në klasën AdwHeaderBar është realizuar mbështetje për elementet e kontrollit të dritareve native në macOS.
- Për të rritur performancën, është reduktuar përdorimi i hijes për dritaret, dialogët dhe dritaret e daljes.
Burimi: opennet.ru


