GNOME նախագիծը հրապարակել է Libadwaita 1.8 գրադարանը, որն ընդգրկում է օգտագործողի ինտերֆեյսի ոճավորման տարրերի հավաքածու, որը համապատասխանում է GNOME HIG (Մարդկանց Ինտերֆեյսի Ռեկոմենդացիաներ) առաջարկություններին։ Գրադարանը ներառում է նախնական վիջետներ և օբյեկտներ, որոնք նախատեսված են GNOME-ի ընդհանուր ոճին համապատասխանող ծրագրեր ստեղծելու համար, որոնց ինտերֆեյսը կարող է ճկուն կերպով հարմարվել ցանկացած չափի էկրանների։ Գրադարանի կոդը գրված է C լեզվով և տարածվում է LGPL 2.1+ լիցենզիայի ներքո։
libadwaita գրադարանը օգտագործվում է GTK4-ի հետ միակցված և ներառում է GNOME-ի Adwaita թեմայի օգտագործվող տարրեր, որոնք արտահանվել են GTK-ից առանձին գրադարան։ GNOME-ի վիզուալ ձևավորման տարրերի առանձնացումը թույլ է տալիս զարգացնել GNOME-ի համար անհրաժեշտ փոփոխությունները ի զորու լինելով անմիջականորեն GTK-ից, ինչը հնարավորություն է տալիս GTK մշակողներին կենտրոնանալ հիմնական հարցերի վրա, իսկ GNOME-ի մշակողներին արագ և ճկուն կերպով առաջ տանել իրենց անհրաժեշտ ոճային փոփոխությունները, չդիպչելով անձամբ GTK-ին։
Գրադարանը ներառում է ընդհանուր վիջետներ, որոնք ընդգրկում են ինտերֆեյսի տարբեր տարրեր, ինչպիսիք են ցուցակները, վահանակները, խմբագրելու բլոկները, կոճակները, ներդիրները, որոնման ձևերը, երկխոսությունները և այլն։ Առաջարկված վիջետները թույլ են տալիս ստեղծել բազմակողմանի ինտերֆեյսեր, որոնք բնականաբար գործում են ինչպես մեծփեղկում PC և նոութբուքերի վրա, այնպես էլ փոքր գործառնական էկրանների վրա սմարթֆոնների։ Դպրոցների ինտերֆեյսը դինամիկ փոխվում է էկրանների չափի և հասանելի մուտքի սարքերի համաձայն։ Գրադարանը ներառում է նաև Adwaita ոճերի հավաքածու, որոնք համապատասխանեցնում են արտաքին տեսքը GNOME-ի առաջարկություններին, առանց ձեռքով հարմարման անհրաժեշտության։

Նոր տարբերակում՝
- GTK 4.18-ում հին լողացող GtkShortcutsWindow դասի փոխարեն, Libadwaita-ում ներդրված է նոր AdwShortcutsDialog դասը, որը նախատեսված է ներկ առկա ստեղնային համակցությունների նավարկման երկխոսի համար։ Նոր իրականացման առանձնահատկությունն է լիակատար վերափոխումը և բաժինների և խմբերի տրամադրման տրամաբանության պարզեցումը։ Զարգացնողին առաջարկվում է նվազագույն API, իսկ երկխոսի կառուցվածքի և բովանդակության սահմանման համար օգտագործվում են UI ֆայլեր։
GtkShortcutLabel-ի փոխարեն առաջարկվում է նոր AwsShortcutLabel դասը, որը չի աջակցում էկրանային ժեստերի և պիկտոգրամաների վերաբերյալ տեղեկատվություն տալուն, քանի որ դրանց օգտագործումը հանգեցնում էր խառնաշփոթի, իսկ կիրառումը սահմանափակված էր (օրինակ, պիկտոգրամները կիրառվել են միայն gnome-games ծրագրում գնդակի կոճակների նշանման համար)։

- CSS մուլտիմեդիա հարցումների օգտագործման հնարավորությունը ավելացվել է՝ մուգ և լուսավոր ձևերի, ինչպես նաև նույն տարրի սովորական և հակադարձ տեսքների estilos ի որոշման համար։ Տեքստի (Adwaita Sans 12pt) և ինտերֆեյսի (Adwaita Sans 11pt) համար տառատեսակների չափերն առանձնացվել են։ Ավելացվել է «.document» στιլային դաս, որտեղ բարելավված ընթերցունակության համար օգտագործվում է Adwaita Sans 12pt տառատեսակը և ավելացված է տողի արանք։ «.body» στιլային դասում ավելացված է տողի արանք, որը այժմ կիրառվում է ըստ դեֆոլտի որոշ պետական վիդջեթների մեջ։

- AdwPreferencesGroup դասը թույլատրվում է օգտագործել մոդելների ցանկերի հետ adw_preferences_group_bind_model() մեթոդի միջոցով։ Նույնպես ավելացվել է ներսի ցանկում AdwPreferencesRow դասը չդառնալու բազմաթիվ գծերի ավելացման հնարավորություն։
- AdwPreferencesPage դասում թույլատրվում է խմբեր տեղադրել ցանկացած վայրում, այլ ոչ թե նախատեսված էջի վերջում։
- AdwPreferencesGroup և AdwPreferencesPage դասերին ավելացվել են adw_preferences_page_get_group() և adw_preferences_group_get_row() մեթոդները խմբերի և գծերի ստուգման համար։
- AdwWrapBox դասին ավելացվել է adw_wrap_box_remove_all() մեթոդը՝ բոլոր զավակ էլեմենտները ջնջելու համար։
- GtkFlowBox դասի զավակ էլեմենտների համար ըստ դեֆոլտի տրամադրված են ոլորելու ոճեր էլեմենտների մկնիկի վրայից ոճի համար և ակտիվացման համար։
- AdwHeaderBar դասում իրականացվել է macOS-ի համար բնօրինակ պատուհանների կառավարման տարրերի աջակցության իրականացում։
- Կատարողականության բարձրացման համար նիշերի օգտագործումը կրճատվել է պատուհանների, երկխոսությունների և վերակնքումների համար։
Ընտանիք: opennet.ru


