Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke

Die GNOME-projek het die eerste stabiele vrystelling van die Libadwaita-biblioteek gepubliseer, wat 'n stel komponente vir gebruikerskoppelvlakstilering insluit wat die GNOME HIG (Human Interface Guidelines) volg. Die biblioteek bevat klaargemaakte widgets en voorwerpe vir die bou van toepassings wat voldoen aan die algemene GNOME-styl, waarvan die koppelvlak aanpasbaar aangepas kan word vir skerms van enige grootte. Die biblioteekkode is in C geskryf en word onder die LGPL 2.1+-lisensie versprei.

Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke

Die libadwaita-biblioteek word saam met GTK4 gebruik en bevat komponente van die Adwaita-tema wat in GNOME gebruik word, wat uit GTK na 'n aparte biblioteek geskuif is. Die libadwaita-kode is gebaseer op die libhandy-biblioteek en is geposisioneer as 'n opvolger van hierdie biblioteek, wat oorspronklik geskep is om 'n aanpasbare koppelvlak in mobiele platforms te bou gebaseer op GNOME-tegnologieë, en is geslyp in die Phosh GNOME-omgewing vir die Librem 5-slimfoon.

Die biblioteek bevat standaard widgets wat verskeie koppelvlakelemente dek, soos lyste, panele, redigeerblokke, knoppies, oortjies, soekvorms, dialoogkassies, ens. Die voorgestelde widgets laat jou toe om universele koppelvlakke te skep wat naatloos funksioneer op beide groot skerms van rekenaars en skootrekenaars, en op klein raakskerms van slimfone. Die toepassingskoppelvlak verander dinamies na gelang van die skermgrootte en beskikbare invoertoestelle. Die biblioteek bevat ook 'n stel Adwaita-style wat die voorkoms en gevoel na GNOME-riglyne bring sonder dat dit nodig is vir handmatige aanpassing.

Deur GNOME-stileringselemente na 'n aparte biblioteek te skuif, kan GNOME-spesifieke veranderinge afsonderlik van GTK ontwikkel word, wat GTK-ontwikkelaars in staat stel om op die kern dinge te fokus en GNOME-ontwikkelaars om stileringsveranderinge wat hulle wil hê, vinniger en buigsaam vorentoe te beweeg sonder om GTK self te beïnvloed. Hierdie benadering skep egter probleme vir ontwikkelaars van derdeparty-GTK-gebaseerde gebruikersomgewings, wat gedwing word om óf libadwaita te gebruik en aan te pas by die kenmerke van GNOME en die ontwerp daarvan te herhaal, óf hul eie weergawe van die GTK-stylbiblioteek te ontwikkel en die voorkoms van GNOME-toepassings heterogeen in omgewings gebaseer op derdeparty-stylbiblioteke.

Die hoofklag van derdeparty-raamwerkontwikkelaars gaan oor probleme met die oorheersing van die kleure van koppelvlakelemente, maar die libadwaita-ontwikkelaars werk daaraan om 'n API vir buigsame kleurbestuur te verskaf, wat in 'n toekomstige vrystelling ingesluit sal word. Onder die onopgeloste probleme word die korrekte werking van gebarebeheerlegstukke slegs op raakskerms ook genoem – vir raakvlakke sal die korrekte werking van sulke legstukke later verseker word, aangesien dit veranderings aan GTK vereis.

Groot veranderinge in libadwaita in vergelyking met libhandy:

  • Heeltemal herontwerpte stel style. Die Adwaita-tema wat in GNOME gebruik word, is uit GTK verwyder en gemoderniseer, en die ou tema is in GTK onder die naam "Default" reggestel. Een van die mees opvallende verskille tussen libadwaita en die "Verstek"-tema is die verandering in die ontwerp van vensteropskrifte.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Die meganismes om kleure aan elemente te bind en kleure te verander terwyl die toepassing loop, is verander (die probleme is te wyte aan die feit dat libadwaita na SCSS oorgeskakel het, wat 'n herbou vereis om kleure te verander). Om die kleure van elemente te verander, wat byvoorbeeld in GNOME Web vereis word om die oorgang na incognitomodus te merk, word die metode wat in elementêre OS voorgestel word, gebruik en is gebaseer op die spesifiseer van 'n vaste lys van benoemde kleure via "@define-color". Die kleure van baie koppelvlakelemente word egter nou relatief tot die basistekskleur bereken en verander outomaties, wat toepassings nie toelaat om die kleurskema ten volle te beheer nie (ontwikkelaars werk daaraan om hierdie beperking uit te skakel).
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakkeVrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Die vertoonkwaliteit is verhoog wanneer donker temas gebruik word as gevolg van meer kontrasterende beligting van elemente. Die aksentkleur is helderder gemaak, en nog 'n hoogtepuntkleur is bygevoeg, wat kan verander vir donker en ligte temas.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakkeVrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Het 'n groot gedeelte nuwe stylklasse bygevoeg vir gebruik in toepassings. Byvoorbeeld, ".pill" vir groot geronde knoppies, die vermoë om ".flat" in GtkHeaderBar te gebruik, ".accent" om 'n aksentkleur in etikette te stel, ".numeric" vir tabeltipografie, ".card" vir die gebruik van agtergrond en skaduwee soos in lyste.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Groot monolitiese SCSS-lêers word in 'n versameling kleiner styllêers verdeel.
  • Bygevoeg API vir die instelling van donker ontwerpstyl en hoë kontrasmodus.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Die dokumentasie is herwerk; die gi-docgen toolkit word nou gebruik om dit te genereer.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • 'n Animasie-API is bygevoeg, wat gebruik kan word om oorgangseffekte te skep wanneer een toestand met 'n ander vervang word, asook om lente-animasie te skep.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Vir oortjies wat op AdwViewSwitcher gebaseer is, is die vermoë om etikette met die aantal ongekykte kennisgewings te vertoon bygevoeg.
    Vrystelling van die Libadwaita 1.0-biblioteek vir die skep van GNOME-styl-koppelvlakke
  • Bygevoeg AdwApplication-klas (subklas van GtkApplication) om Libadwaita en laaistyle outomaties te inisialiseer.
  • 'n Seleksie legstukke is bygevoeg om standaardbewerkings te vereenvoudig: AdwWindowTitle vir die stel van die venstertitel, AdwBin om die skepping van kindersubklasse te vereenvoudig, AdwSplitButton vir gekombineerde knoppies, AdwButtonContent vir knoppies met 'n ikoon en 'n etiket.
  • API skoongemaak.

Bron: opennet.ru

Voeg 'n opmerking