Disponibile il toolkit grafico GTK 4.22 con motore di rendering SVG integrato

Dopo sei mesi di sviluppo, è stato pubblicato il rilascio del toolkit multipiattaforma per la creazione dell'interfaccia grafica utente — GTK 4.22. GTK 4 si sviluppa all'interno di un processo di sviluppo che cerca di fornire agli sviluppatori di applicazioni un'API stabile e supportata per diversi anni, utilizzabile senza timori di dover riprogettare le applicazioni ogni sei mesi a causa delle modifiche all'API in un nuovo ramo di GTK.

Tra i miglioramenti significativi in GTK 4.22:

  • È stata aggiunta una sistema di rendering e parsing integrato per immagini in formato SVG, che supporta l'animazione e consente la creazione di icone animate, elementi interattivi dell'interfaccia e indicatori dinamici che cambiano, come ad esempio gli indicatori di progresso. GtkSvg si integra direttamente con la libreria GSK (GTK Scene Kit), che offre capacità di rendering di scene grafiche tramite OpenGL e Vulkan. La libreria librsvg, precedentemente utilizzata per il rendering delle icone SVG, è stata rimossa dalle dipendenze.

    Per lavorare con il formato SVG è stata proposta la classe Gtk.Svg, che consente di evitare dipendenze esterne durante il rendering di icone vettoriali e risorse per le applicazioni. L'implementazione proposta del formato SVG è stata sviluppata appositamente per GTK e supera con successo 1250 dei 1616 test di compatibilità del set resvg (a titolo di confronto, Firefox supera 1385 test, librsvg 1168 e QtSvg 591).

  • È stato aggiunto il widget GtkPopoverBin, che semplifica l'aggiunta di menu contestuali e dialoghi a discesa ad altri widget. GtkPopoverBin può essere utilizzato come contenitore per integrare la funzionalità delle finestre pop-up nei widget che da soli non possono farlo.
  • È stato aggiunto un nuovo tipo di espressioni GtkTryExpression, che consentono di definire operazioni di fallback. GtkTryExpression tenta di eseguire ogni espressione della lista finché una di esse non viene eseguita con successo.
  • È stato attivato un nuovo formato di icone simboliche, che supporta l'animazione e gli stati mutevoli (ad esempio, per indicare attività). Per gestire la larghezza delle icone è stata aggiunta la proprietà CSS «-gtk-icon-weight». È stata aggiunta un'applicazione dimostrativa org.gtk.Shaper con un'implementazione dell'editor per il nuovo formato di icone simboliche.
    Disponibile il toolkit grafico GTK 4.22 con motore di rendering SVG integrato
  • Nel backend, è stata implementata un supporto sperimentale per il protocollo xx-session-management, che può essere utilizzato per ripristinare lo stato delle finestre dei sessioni interrotte (ad esempio, dopo un arresto anomalo del gestore di composizione). Per attivarlo, impostare la variabile di ambiente "GDK_DEBUG=session-mgmt".
  • Nell'API GtkApplication è stata aggiunta la possibilità di salvare lo stato, utilizzando il protocollo xx-session-management. In GNOME 50, questa funzionalità è utilizzata per salvare le sessioni e ripristinare le posizioni delle finestre.
  • Per accedere alle impostazioni nel backend per Wayland, è stato utilizzato il portale freedesktop.portal.Settings.
  • Nell'API GtkFileLauncher è stata implementata la possibilità di accedere a file in scrittura, quando utilizzata all'interno dei pacchetti flatpak.
  • In GSK (GTK Scene Kit) è stato aggiunto il supporto per il profiling e la possibilità di spostare pixel dell'immagine originale in base a una "mappa di spostamento" (displacement map) per creare effetti grafici complessi.
  • È stata aggiunta l'API GskRenderNodeReplay per la gestione dell'albero dei nodi di rendering (Render Node).
  • Sono stati aggiunti nuovi tipi di nodi di rendering "copy" e "paste", che consentono di copiare e incollare un'area sotto l'elemento corrente in un'altra posizione del grafo della scena.
  • È stato aggiunto un nuovo tipo di nodi di rendering "composite", che consente di utilizzare operazioni di compositing aggiuntive durante il rendering di un elemento sopra uno sfondo, come sovrapposizioni con maschere.
  • Nel CSS è stata aggiunta la proprietà "backdrop-filter" per applicare effetti all'area di sfondo, come il blur.
  • Nel CSS è stato aggiunto il supporto per la configurazione "reduced-motion", che informa della necessità di minimizzare l'uso delle animazioni.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster