libadwaita er baseret på libhandy-biblioteket og er positioneret til at erstatte dette bibliotek,
Det udgivelse af ny version af Libadwaita 1.4-biblioteket hvori forskellige forbedringer præsenteres, og hvoraf f.eks nyt breakpoint system, nye adaptive widgets, forbedringer af tilbageknappen, forbedringer i opdelte visninger, nye stilarter og mange andre ting.
For dem, der ikke kender til Libadwaita, bør du vide, at dette omfatter et sæt komponenter til at designe brugergrænsefladen som overholder GNOME HIG (Human Interface Guidelines). Biblioteket indeholder widgets og objekter, der er klar til brug, til at skabe applikationer, der overholder den generelle GNOME-stil, hvis grænseflade responsivt kan tilpasses til skærme af enhver størrelse.
Libadwaita-biblioteket bruges sammen med GTK4 og inkluderer komponenter af Adwaita brugt i GNOME, som er blevet flyttet fra GTK til et separat bibliotek.
Vigtigste nye funktioner i Libadwaita 1.4
I denne nye version, der præsenteres af Libadwaita 1.4, har vi foreslået nye adaptive widgets, der tilpasser sig størrelsen på det synlige område, og det nye sæt giver korrekt understøttelse af indlejret ændring af størrelse (f.eks. når ændring af størrelse på sidebjælken involverer ændring af størrelse på knapper og kontakter).
Udover det, Rettede problemer med animerede effekter Når du skifter tilstande, er håndteringen af breddeændringer blevet ændret, og brugsfleksibiliteten er øget (f.eks. i mobilversionen kan du flytte nogle af widgets fra overskriften til det nederste panel).
Andre ændringer, der skiller sig ud i den nye version af Libadwaita 1.4, er, at den er blevet implementeretn breakpoint system, breakpoint-klassen, som giver dig mulighed for at ændre brugergrænsefladen på enhver måde afhængigt af vinduets størrelse. Breakpoints kan blandt andet defineres deklarativt gennem UI-filer.
Fx kan bruges helt deklarativt fra UI-filer:
<object class="AdwBreakpoint">
<condition>max-width: 500sp</condition>
<setter object="split-view" property="collapsed">True</property>
</object>
På den anden side widgeten AdwNavigationView implementerer et navigationsmønster, der erstatter AdwLeaflet-widgetten i "can-unfold=false"-tilstand, hvilket giver en navigationsstak, der kan konfigureres statisk (via UI-filer) eller dynamisk, og understøtter Navigation.push og Navigation.pop-handlinger til at placere sider direkte fra fil-UI.
Widgeten AdwHeaderBar har nu mulighed for automatisk at vise den korrekte overskrift for hver navigationsside, samt visning af en tilbage-knap for at gå til forrige side eller visning af en menu for at vælge, hvilke sider der skal gå til.
Det er også bemærkelsesværdigt, at der er tilføjet en AdwNavigationSplitView-widget, der har to børn (en sidebjælke og indhold), der vises side om side. Størrelsen på sidebjælken kan vælges som en vis procentdel af den samlede bredde af det synlige område.
Af de andre ændringer der skiller sig ud fra denne nye version:
- Tilføjet en widget til at vise kontakter AdwSwitchRow, implementeret som en underklasse af AdwActionRow indeholdende GtkSwitch.
- Tilføjet AdwSpinRow-widget med en listerækkeimplementering, der inkluderer en GtkSpinButton.
- Tilføjet en ny stilklasse » .property » for at vise egenskaber.
- Tilføjet funktionen adw_about_window_new_from_appdata() for at forenkle oprettelsen af vinduer med information om programmet.
- AdwComboRow-widgetten understøtter nu søgefelter.
- Tilføjet AdwPreferencesPage:description-egenskab for at vise beskrivelsen øverst på siden.
- AdwTabOverview-widgetten har ændret sin thumbnail-håndtering markant for at fungere bedre med WebKitWebView.
- Farven på overskrifter og værktøjslinjer i lette temaer er blevet ændret til hvid i stedet for grå. Den grå farve er nu inkluderet i sidebjælkerne.
Endelig, hvis du er interesseret i at vide mere om det, du kan tjekke detaljer i følgende link. Det er også værd at nævne, at bibliotekskoden er skrevet på C-sprog og distribueres under LGPL 2.1+-licensen.