Kit d'outils graphiques GTK 4.16 disponible

Après six mois de développement, la sortie d'une boîte à outils multiplateforme pour créer une interface utilisateur graphique a été publiée - GTK 4.16.0. GTK 4 est développé dans le cadre d'un processus de développement visant à fournir aux développeurs d'applications une API stable et prise en charge sur plusieurs années, qui peut être utilisée sans craindre de devoir refaire des applications tous les six mois en raison des changements d'API dans la prochaine branche GTK.

Parmi les améliorations les plus notables de GTK 4.16 figurent :

  • Ajout du paramètre gtk-font-rendering, qui fournit des options flexibles de haut niveau pour contrôler le rendu des polices. Pour utiliser des paramètres de police de bas niveau, définissez le paramètre gtk-font-rendering sur « manuel ».
  • La bibliothèque GSK (GTK Scene Kit), qui offre la possibilité de restituer des scènes graphiques via OpenGL et Vulkan, utilise par défaut le moteur de rendu « vulkan » pour le rendu dans des environnements basés sur le protocole Wayland, qui utilise directement l'API graphique Vulkan. Sinon, le moteur de rendu "ngl" continue d'être utilisé, offrant une implémentation OpenGL fonctionnant au-dessus de l'API Vulkan. Pour changer de moteur, vous pouvez utiliser la variable d'environnement "GSK_RENDERER". Étant donné que les moteurs « vulkan » et « ngl » interagissent différemment avec les pilotes graphiques, pour un fonctionnement stable avec eux, il est recommandé d'utiliser la dernière version Mesa 24.2.
  • Les autres modifications apportées à la bibliothèque GSK incluent :
    • La technique d'optimisation « occlusion culling » a été mise en œuvre, qui élimine le rendu des objets cachés derrière d'autres objets opaques ou hors du champ de vision.
    • Pendant le processus de composition, les informations sur l’espace colorimétrique sont prises en compte.
    • Mise en cache améliorée des glyphes et des textures.
    • Ajout de la prise en charge de la mosaïque de grandes textures afin de créer une surface homogène en répétant la texture.
    • Rendu des ombres amélioré.
    • Ajout de la possibilité d'utiliser l'accélération matérielle pour traiter les textures converties, par exemple pour afficher le contenu pivoté sur l'écran.
    • Utilisation améliorée des mécanismes d'accélération matérielle sur les systèmes avec le gestionnaire composite kwin.
    • Ajout de l'option de débogage "GDK_DEBUG=linear" pour activer le mode de composition linéaire. Journalisation améliorée lors de l'utilisation des options "GDK_DEBUG=offload" et "GSK_DEBUG=renderer".
  • Lorsque vous travaillez dans des environnements basés sur le protocole Wayland et le gestionnaire composite kwin, il est possible d'utiliser une extension de protocole (gestion des couleurs) pour la gestion des couleurs. Lors de l'affichage des boîtes de dialogue épinglées, l'extension Wayland xdg-dialog est utilisée. Lors de la composition, la sixième version de l'objet wl_compositor est utilisée. Autoriser l'utilisation de dmabuf lors de l'accélération matérielle du traitement des textures pour OpenGL.
  • Améliorations de la bibliothèque GDK, qui fournit une couche entre GTK et le sous-système graphique :
    • Les possibilités de travailler avec les espaces colorimétriques ont été considérablement élargies. La prise en charge des espaces colorimétriques srgb, srgb-linear, rec2100-pq et rec2100-linear a été fournie, et des préparatifs ont été effectués pour implémenter la prise en charge des espaces colorimétriques HDR. Un objet GdkColorState est proposé et fournit des informations d'interprétation des couleurs qui peuvent être utilisées pour convertir un espace colorimétrique en un autre. Pour créer des objets avec des informations sur les espaces colorimétriques, l'objet Gdk.CicpParams a été ajouté. La possibilité d'utiliser des espaces colorimétriques a été ajoutée à l'objet GdkTexture, ainsi qu'aux objets de création, de chargement et de conversion de textures.
    • Une nouvelle API a été implémentée pour travailler avec le curseur, basée sur des appels de rappel.
    • La possibilité d'effectuer des opérations de texturation MIP (MipMap, créant des versions plus petites des textures utilisées lors de l'éloignement d'un objet de la caméra) à l'aide du processeur a été implémentée.
    • Un pool de threads est utilisé pour la conversion des couleurs et la texturation MIP.
    • Ajout de la prise en charge de la variable d'environnement XDG_ACTIVATION_TOKEN avec le jeton d'activation pour le protocole xdg-activation-v1, avec lequel une application peut basculer le focus sur une autre.
    • Ajout de la classe GdkMemoryTextureBuilder, qui permet de créer des objets avec des textures (GdkTexture) à partir de données stockées dans la RAM.
  • Les possibilités de création de thèmes basés sur CSS ont été étendues. Ajout de la prise en charge des variables et des propriétés personnalisées. Implémentation des fonctions CSS color(), oklab(), color-mix(), ainsi que des fonctions mathématiques. Il est possible d'utiliser des définitions relatives de couleurs (modification des couleurs absolues par fonctions), ainsi que de définir le niveau de transparence en pourcentage. Lorsque vous travaillez avec des couleurs, des cadres, des ombres et du texte, les informations sur les espaces colorimétriques sont prises en compte.
  • Ajout de commandes « extrait » pour charger des données via une URL et de commandes « image » pour manipuler les textures dans l'utilitaire rendernode-tool. La possibilité de générer des fichiers au format PDF a été implémentée.
  • L'opération « Coller en tant que nœud » a été ajoutée à l'interface gtk4-node-editor.
  • Ajout de la prise en charge de la combinaison Ctrl-Shift-N pour créer des répertoires dans le widget de sélection de fichiers GtkFileChooserWidget.
  • Le widget popover GtkPopover a amélioré la gestion du redimensionnement et du positionnement.
  • Le widget GtkGraphicsOffload, utilisé pour envoyer directement du contenu tel que de la vidéo via le gestionnaire composite en contournant le moteur de rendu GSK, a ajouté une propriété « black-background » pour générer un arrière-plan noir.
    Kit d'outils graphiques GTK 4.16 disponible
  • В виджет GtkGLArea, предназначенный для вывода с использованием OpenGL, добавлена возможность формирования текстур в dmabuf, что позволяет использовать виджет GtkGraphicsOffload для прямого вывода напрямую через композитный serveur. Повышена эффективность взаимодействия с композитным serveur.
    Kit d'outils graphiques GTK 4.16 disponible
  • Ajout de la prise en charge de l'affichage du texte avec une ombre sur le widget GtkTextView et implémentation de la possibilité d'utiliser les notifications GtkTextBufferCommitNotify.
  • Ajout de la prise en charge de la définition de groupe des styles de boutons au widget GtkCheckButton.
  • Capacités de débogage améliorées. Des informations sur les espaces colorimétriques ont été ajoutées à l'interface d'inspection, ainsi que des informations sur la résolution du moniteur. La variable d'environnement GDK_DEBUG est divisée en GDK_DEBUG et GDK_DISABLE. Ajout des modes GDK_DISABLE=color-mgmt et GDK_DISABLE=offload. Ajout du mode GTK_DEBUG=css pour afficher des avertissements lors de l'utilisation de fonctionnalités CSS obsolètes. Ajout des raccourcis clavier Super-r pour enregistrer un journal d'événements et Super-c pour prendre une capture d'écran.
  • Les exigences relatives aux dépendances et à l'environnement de construction ont été augmentées. Pour construire, vous avez maintenant besoin d'un compilateur prenant en charge C11 et au moins des versions de gstreamer 1.24, pango 1.52 et cairo 1.18. La prise en charge des modes de construction hérités gtk_doc (devrait utiliser la documentation), update_screenshots (-> captures d'écran), demo-profile (-> profile) et démos (-> build-demos) a été interrompue.
  • Pour macOS 10.15+ реализован интерфейс определения цвета пикселей на экране (color picker).
  • Pour Windows включён режим инкрементального рендеринга с использованием API WGL.

Source: opennet.ru

Achetez un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Achetez un hébergement web fiable avec protection DDoS, serveurs VPS et VDS | ProHoster