El kit de herramientas de gráficos GTK 4.22 con un motor de renderizado SVG integrado ya está disponible.

Después de seis meses de desarrollo, se publicó el lanzamiento de un conjunto de herramientas multiplataforma para crear una interfaz gráfica de usuario: GTK 4.22. GTK 4 se está desarrollando como parte de un proceso de desarrollo que intenta proporcionar a los desarrolladores de aplicaciones una API estable y compatible durante varios años que se pueda utilizar sin temor a tener que rehacer las aplicaciones cada seis meses debido a cambios de API en la próxima rama de GTK.

Las mejoras notables en GTK 4.22 incluyen:

  • Se ha añadido un sistema integrado para renderizar y analizar imágenes SVG. Admite animación y permite la creación de iconos animados, elementos de interfaz interactivos e indicadores dinámicos, como barras de progreso. GtkSvg se integra directamente con la biblioteca GSK (GTK Scene Kit), que permite renderizar escenas gráficas mediante OpenGL y Vulkan. La biblioteca librsvg, utilizada anteriormente para renderizar iconos SVG, se ha eliminado como dependencia.

    La clase Gtk.Svg está diseñada para trabajar con el formato SVG, eliminando las dependencias externas al renderizar iconos vectoriales y recursos de la aplicación. Esta implementación del formato SVG está diseñada específicamente para GTK y supera 1250 de las 1616 pruebas de compatibilidad de la suite resvg (a modo de comparación, Firefox supera 1385 pruebas, librsvg 1168 y QtSvg 591).

  • Se ha añadido el widget GtkPopoverBin, que simplifica la adición de menús contextuales y cuadros de diálogo desplegables a otros widgets. GtkPopoverBin puede utilizarse como contenedor para integrar la funcionalidad de ventanas emergentes en widgets que no la admiten de forma nativa.
  • Se ha añadido un nuevo tipo de expresión, GtkTryExpression, que permite definir operaciones de respaldo. GtkTryExpression intenta ejecutar cada expresión de la lista hasta que una tenga éxito.
  • Se ha implementado un nuevo formato de icono simbólico que admite animación y cambios de estado (por ejemplo, para indicar actividad). Se ha añadido la propiedad CSS "-gtk-icon-weight" para controlar el ancho del icono. Se ha añadido una aplicación de demostración, org.gtk.Shaper, que implementa un editor para el nuevo formato de icono simbólico.
     El kit de herramientas de gráficos GTK 4.22 con un motor de renderizado SVG integrado ya está disponible.
  • El backend basado en Wayland ahora incluye compatibilidad experimental con el protocolo xx-session-management, que permite restaurar el estado de la ventana de sesiones interrumpidas (por ejemplo, tras un fallo del gestor de composición). Para habilitarlo, configure la variable de entorno "GDK_DEBUG=session-mgmt".
  • La API GtkApplication ahora permite guardar el estado mediante el protocolo xx-session-management. En GNOME 50, esta funcionalidad se utiliza para guardar sesiones y restaurar la posición de las ventanas.
  • El portal freedesktop.portal.Settings se utiliza para acceder a la configuración en el backend de Wayland.
  • La API GtkFileLauncher implementa la capacidad de acceder a archivos para escribir cuando se utiliza dentro de paquetes flatpak.
  • GSK (GTK Scene Kit) agrega soporte para la creación de perfiles y la capacidad de cambiar píxeles en la imagen de origen según un mapa de desplazamiento para crear efectos gráficos complejos.
  • Se agregó la API GskRenderNodeReplay para manejar el árbol de nodos de renderizado.
  • Se han agregado nuevos tipos de nodos de dibujo, "copiar" y "pegar", que le permiten copiar y pegar el área debajo del elemento actual en otra ubicación en el gráfico de escena.
  • Se agregó un nuevo tipo de nodo de renderizado, "compuesto", que permite operaciones de composición adicionales al dibujar un elemento sobre un fondo, como el enmascaramiento.
  • Se ha agregado la propiedad "backdrop-filter" a CSS para aplicar efectos al área de fondo, como el desenfoque de fondo.
  • CSS ahora admite la configuración de "movimiento reducido", que indica la necesidad de minimizar el uso de animación.

Fuente: opennet.ru

Añadir un comentario