Dopo tre mesi di sviluppo, è stata presentata la versione del toolkit multipiattaforma per la creazione di interfacce grafiche — GTK 4.2.0. GTK 4 si sviluppa nell'ambito di un nuovo processo di sviluppo che cerca di fornire agli sviluppatori di applicazioni un'API stabile e supportata per diversi anni, utilizzabile senza timore di dover rielaborare le applicazioni ogni sei mesi a causa delle modifiche all'API in un nuovo ramo di GTK.
Nel nuovo rilascio sono stati principalmente risolti bug e apportati miglioramenti all'API, sulla base dei feedback degli sviluppatori che hanno portato le loro applicazioni su GTK4. Tra i miglioramenti più significativi in GTK 4.2 si possono notare:
- È stato aggiunto il renderer NGL, un nuovo motore di rendering tramite OpenGL, attivato per impostazione predefinita su Linux, Windows e macOS. Il renderer NGL fornisce prestazioni più elevate riducendo il carico sulla CPU. Per tornare al vecchio motore di rendering è necessario avviare l'applicazione con la variabile d'ambiente GSK_RENDERER=gl.
- Ridefinita la gestione delle sequenze di composizione e dei tasti morti, modificando l'aspetto del successivo carattere immesso.

- Implementata la possibilità di utilizzare GTK come sottoprogetto nel sistema di build Meson, permettendo di costruire GTK e tutte le sue dipendenze all'interno dell'ambiente di build della propria applicazione, e di ottenere tutti gli artefatti di build da fornire insieme alla propria applicazione, utilizzando l'insieme di strumenti scelto.
- Migliorato il supporto per la compilazione di GTK su Windows e macOS utilizzando strumenti nativi per queste piattaforme.
- Ridefinita la documentazione API, per la cui generazione è stato utilizzato un nuovo generatore gi-docgen, che offre una presentazione più comoda delle informazioni, comprese le pulsanti per copiare esempi di codice negli appunti, una rappresentazione visiva della gerarchia di antenati e interfacce di ciascuna classe, un elenco delle proprietà, segnali e metodi ereditati dalla classe. L'interfaccia supporta la ricerca lato client e si adatta automaticamente a diverse dimensioni dello schermo. Per la documentazione è stato lanciato un nuovo sito docs.gtk.org, dove sono anche disponibili guide correlate all'introspezione di GObject, Pango e GdkPixbuf.
- È stata ottimizzata la performance di vari componenti, dai shader GLSL utilizzati per il rendering agli oggetti per persone con disabilità.
- È stato implementato il posizionamento del testo in sub-pixel con le nuove versioni della libreria Cairo.
- È stata garantita una disposizione adattiva dell'interfaccia per la selezione di emoji.
- È stato migliorato il supporto dell'estensione del protocollo Wayland per la gestione dell'input.
- È stata aumentata la performance dello scrolling nel widget di visualizzazione del testo.
- È stato migliorato il rendering delle ombre nei widget popover.

Fonte: opennet.ru


