Après trois mois de développement, le lancement du kit d'outils multiplateformes pour la création d'interfaces utilisateur — GTK 4.2.0. GTK 4 évolue dans le cadre d'un nouveau processus de développement, qui vise à fournir aux développeurs d'applications une API stable et supportée pendant plusieurs années, sans craindre que leurs applications doivent être réécrites tous les six mois à cause des changements d'API dans une nouvelle branche de GTK.
Dans cette nouvelle version, la plupart des bugs ont été corrigés et des améliorations apportées à l'API, basées sur les retours des développeurs ayant porté leurs programmes sur GTK4. Parmi les améliorations les plus notables de GTK 4.2, on peut citer :
- Ajout du renderer NGL, un nouveau moteur de rendu via OpenGL, qui est activé par défaut sur Linux, Windows et macOS. Le renderer NGL offre de meilleures performances tout en réduisant la charge sur le CPU. Pour revenir à l'ancien moteur de rendu, l'application doit être lancée avec la variable d'environnement GSK_RENDERER=gl.
- Refonte du traitement des séquences Compose et des touches muettes, qui modifient l'apparence du prochain caractère saisi.

- Mise en œuvre de la possibilité d'utiliser GTK sous forme de sous-projet dans le système de construction Meson, ce qui permet de compiler GTK et toutes ses dépendances dans le cadre de l'environnement de construction de l'application, tout en obtenant tous les artefacts de construction à livrer avec son application, en utilisant l'outil choisi.
- Amélioration du support de la compilation de GTK pour Windows et macOS en utilisant les outils natifs de ces plateformes.
- Refonte de la documentation de l'API, pour laquelle un nouveau générateur gi-docgen a été utilisé, offrant une présentation plus pratique de l'information, y compris des boutons pour ajouter des exemples de code dans le presse-papiers, une représentation visuelle de l'héritage et des interfaces de chaque classe, une liste des propriétés, signaux et méthodes hérités de la classe. L'interface prend en charge la recherche côté client et s'adapte automatiquement à différentes tailles d'écran. Pour la documentation, un nouveau site docs.gtk.org a été lancé, proposant également des guides connexes sur l'introspection GObject, Pango et GdkPixbuf.
- La performance de divers composants a été optimisée, allant des shaders GLSL utilisés lors du rendu aux objets pour les personnes handicapées.
- Le positionnement subpixel du texte a été réalisé avec les nouvelles versions de la bibliothèque Cairo.
- Une mise en page adaptative de l'interface pour le choix des emoji a été assurée.
- Le support de l'extension du protocole Wayland pour la gestion des entrées a été amélioré.
- Les performances de défilement dans le widget de visualisation de texte ont été augmentées.
- Le rendu des ombres dans les widgets contextuels (popover) a été amélioré.

Source : opennet.ru


