Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME

Projekt GNOME je objavil prvo stabilno različico knjižnice Libadwaita, ki vključuje nabor komponent za slogovno oblikovanje uporabniškega vmesnika, skladnega z navodili GNOME HIG (Human Interface Guidelines). Knjižnica vključuje pripravljene pripomočke in objekte za gradnjo aplikacij, ki so v skladu z splošnim slogom GNOME, pri čemer se njihov vmesnik lahko prilagaja na zaslone katere koli velikosti. Koda knjižnice je napisana v jeziku C in se distribucira pod licenco LGPL 2.1+.

Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME

Knjižnica libadwaita se uporablja v kombinaciji z GTK4 in vključuje komponente uporabljene v GNOME temi oblikovanja Adwaita, ki so bile prenesene iz GTK v ločeno knjižnico. Koda libadwaita temelji na knjižnici libhandy in se pozicionira kot naslednica te knjižnice, ki je bila prvotno ustvarjena za gradnjo prilagodljivega vmesnika na mobilnih platformah na podlagi tehnologij GNOME in je bila izpopolnjena v GNOME-okolju Phosh za pametni telefon Librem 5.

Knjižnica vsebuje standardne pripomočke, ki pokrivajo različne elemente vmesnika, kot so sezname, panele, urejevalne bloke, gumbe, zavihke, iskalne obrazce, pogovorna okna itd. Predlagani pripomočki omogočajo ustvarjanje univerzalnih vmesnikov, ki delujejo tako na velikih zaslonih osebnih računalnikov in prenosnikov kot tudi na majhnih zaslonih pametnih telefonov. Vmesnik aplikacij se dinamično spreminja glede na velikost zaslona in razpoložljive naprave za vnos. Knjižnica prav tako vključuje nabor slogov Adwaita, ki prilagaja videz v skladu z navodili GNOME, brez potrebe po ročni prilagoditvi.

Izločitev elementov vizualnega oblikovanja GNOME v ločeno knjižnico omogoča razvoj potrebnih sprememb za GNOME ločeno od GTK, kar razvijalcem GTK omogoča, da se osredotočijo na osnovne stvari, medtem ko razvijalci GNOME lažje in hitreje uvajajo potrebne spremembe oblikovanja, ne da bi se dotikali samega GTK. Kljub temu takšen pristop povzroča težave razvijalcem drugih uporabniških okolij, temelječih na GTK, ki so prisiljeni bodisi uporabljati libadwaita in se prilagajati značilnostim GNOME ter ponavljati njegovo oblikovanje, bodisi razviti lastno različico sloga za GTK ter se sprijazniti, da bodo aplikacije GNOME izgledale heterogeno v okoljih, temelječih na drugih stilskih knjižnicah.

Glavno nezadovoljstvo razvijalcev drugih okolij se nanaša na težave pri preoblikovanju barv elementov uporabniškega vmesnika, vendar razvijalci libadwaita delajo na zagotavljanju API-ja za fleksibilno upravljanje barv, ki bo vključen v eno od naslednjih izdaja. Med nerešenimi težavami se omenja tudi pravilno delovanje gestnih kontrolnikov samo na zaslonih na dotik — za touchpade bo pravilno delovanje takšnih kontrolnikov zagotovljeno kasneje, saj zahteva spremembe v GTK.

Glavne spremembe v libadwaita v primerjavi z libhandy:

  • Popolnoma prenovljen sklop slogov. Tema oblikovanja Adwaita, ki se uporablja v GNOME, je bila odstranjena iz GTK in posodobljena, stara tema oblikovanja pa je v GTK označena kot 'Default'. Med najbolj opaznimi razlikami med libadwaita in temo 'Default' je sprememba oblikovanja naslovov oken.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Spremenjeni so mehanizmi povezovanja barv z elementi in spreminjanja barv med delovanjem aplikacije (težave izhajajo iz dejstva, da je libadwaita prešel na SCSS, ki zahteva ponovno sestavljanje za zamenjavo barve). Za spremembo barv elementov, kar je na primer potrebno v GNOME Web za označevanje prehoda v privatni način, je uporabljen postopek, ki ga predlaga elementary OS, in temelji na določitvi fiksnega seznama poimenovanih barv preko „@define-color“. Pri tem se barve mnogih elementov vmesnika sedaj izračunavajo glede na osnovno barvo besedila in se samodejno spreminjajo, kar ne omogoča aplikacijam popolnega nadzora nad barvno shemo (razvijalci delajo na odpravi te omejitve).
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOMEIzdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Kakovost prikaza temnih tem je bila izboljšana z bolj kontrastno označitvijo elementov. Akcentna barva je postala svetlejša, dodana pa je bila še ena barva za označevanje, ki se lahko spreminja za temno in svetlo temo.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOMEIzdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Dodana je velika količina novih stilskih razredov za uporabo v aplikacijah. Na primer, „.pill“ za velike zaobljene gumbe, možnost uporabe „.flat“ v GtkHeaderBar, „.accent“ za določitev akcentne barve v oznakah, „.numeric“ za tabelarno tipografijo, „.card“ za uporabo ozadja in senc kot v seznamih.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Velike monolitne datoteke SCSS so razdeljene na zbirko manjših datotek s stili.
  • Dodana je API za prilagajanje temnega sloga in načina visoke kontrastnosti.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Dokumentacija je bila prenovljena, pri čemer se sedaj uporablja orodje gi-docgen za generacijo.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Dodana je API za animacijo, ki se lahko uporablja za ustvarjanje prehodnih učinkov pri zamenjavi enega stanja z drugim ter za ustvarjanje učinov »spring animation«.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Za zavihke, ki temeljijo na AdwViewSwitcher, je bila dodana možnost prikaza oznak s številom nepreverjenih obvestil.
    Izdanak biblioteke Libadwaita 1.0 za izradu korisničkih sučelja u stilu GNOME
  • Dodana je razred AdwApplication (podrazred GtkApplication) za samodejno inicializacijo Libadwaita in nalaganje stilov.
  • Dodana je zbirka pripomočkov za poenostavitev standardnih operacij: AdwWindowTitle za nastavitev naslovov oken, AdwBin za poenostavitev ustvarjanja podrazredov, AdwSplitButton za kombinirane gumbe, AdwButtonContent za gumbe s ikonami in oznakami.
  • Očistilo se je API.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster