Kit de herramientas gráficas GTK 4.6 disponible

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

Algunas de las mejoras más notables en GTK 4.6 incluyen:

  • El antiguo motor de renderizado basado en OpenGL ha sido eliminado y reemplazado por el nuevo motor de renderizado NGL, proporcionado por defecto desde GTK 4.2, que proporciona un mejor rendimiento. NGL pasó a llamarse GL. Se reescribió el código de carga de texturas y se mejoró la compatibilidad con formatos de imagen y espacios de color.
  • El código asociado con el cálculo del tamaño de los elementos y el diseño de los widgets se ha modificado significativamente. Anteriormente, las propiedades GtkWidget::halign y GtkWidget::valign se basaban en el tamaño predeterminado del widget al colocar elementos, lo que, al especificar solo un tamaño en el modo de relleno de área, podía provocar que el elemento ocupara espacio adicional. GTK 4.6 introduce la capacidad de medir el tamaño faltante entre sí (por ejemplo, si se especifica un ancho, la ubicación puede tener en cuenta la altura disponible), lo que permite que los widgets sean más delgados sin ocupar espacio innecesario.
    Kit de herramientas gráficas GTK 4.6 disponible
    Kit de herramientas gráficas GTK 4.6 disponible
  • El widget GtkBox tiene la capacidad de calcular el tamaño individual de los elementos secundarios. Mientras que anteriormente el espacio se distribuía equitativamente entre los widgets secundarios según su tamaño predeterminado, GTK 4.6 ahora tiene en cuenta el tamaño real de los secundarios al generar.
  • El widget GtkLabel incluye soporte para ajustar texto en cualquier número de líneas, lo que le permite crear etiquetas estrechas que ocupan espacio vertical disponible.
  • La clase GtkWindow ha agregado la capacidad de ajustar el tamaño mínimo a la relación de aspecto, lo que le permite cambiar el tamaño de la ventana arbitrariamente sin temor a que sea demasiado pequeña. Se agregó la propiedad "Window.titlebar".
  • Se agregó una nueva advertencia sobre discrepancias de tamaño si el widget devuelve un tamaño incorrecto. Gtk-CRITICAL **: 00:48:33.319: gtk_widget_measure: aserción 'for_size >= tamaño mínimo opuesto' falló: 23 >= 42
  • El widget GtkTextView ahora admite pestañas alineadas a la derecha o al centro. Se agregó soporte para la conversión de texto y consideraciones de altura de línea. Desplazamiento mejorado a la operación de etiqueta especificada. Manejo mejorado de deshacer cambios. Se resolvieron problemas al pegar texto desde el portapapeles y elegir dónde mostrar la interfaz de pegado de Emoji.
  • El widget GtkMenuButton ofrece la posibilidad de definir sus propios elementos secundarios.
  • La precompilación de plantillas se ha acelerado en GtkBuilder.
  • Se agregó una señal de activación para activar los widgets GtkComboBox y GtkDropDown.
  • Se agregó la propiedad show-arrow al widget GtkDropDown para controlar si se muestra la flecha.
    Kit de herramientas gráficas GTK 4.6 disponible
  • Se agregó el atributo use-markup a GtkPopoverMenu para usar el marcado Pango en el texto del menú.
  • El sistema de estilo admite las propiedades CSS font-variant-caps para mostrar letras mayúsculas pequeñas y text-transform para transformar texto.
  • Se agregó la interfaz GtkSymbolicPaintable para controlar el color de los íconos de símbolos.
  • Se agregó soporte para rastrear operaciones de arrastrar y soltar a la interfaz de inspección, se mostró el módulo de entrada actual, se agregó un visor de contenido del portapapeles, se implementó un gráfico para visualizar gtk_widget_measure() y la capacidad de registrar eventos ha sido proporcionado. Se agregó soporte para el modo Arrastrar y soltar a la utilidad gtk4-node-editor.
  • Para Wayland, se ha implementado una configuración para activar el modo de alto contraste. Se agregó soporte para el protocolo wl_seat v7.
  • Se agregó la configuración gtk-hint-font-metrics para acercar la representación de texto al comportamiento GTK3.
  • Para sistemas basados ​​en X11, se agregó soporte para gestos de control del panel táctil (cuando se usa XInput 2.4) y se mejoró el comportamiento de arrastre del título de la ventana.
  • La biblioteca GDK, que proporciona una capa entre GTK y el subsistema de gráficos, ha mejorado la verificación de versiones de OpenGL y OpenGL ES. Se agregó soporte para el espacio de color HSL. Al cargar texturas y procesar formatos de imágenes, las bibliotecas libpng, libjpeg y libtiff participan directamente. El código de inicialización de EGL se ha movido al lado de la interfaz. Se agregaron nuevas API: gdk_texture_new_from_bytes, gdk_texture_new_from_filename, gdk_texture_download_float, gdk_texture_save_to_png_bytes, gdk_texture_save_to_tiff, gdk_texture_save_to_tiff_bytes y gdk_display_create_gl_context.
  • La rama "master" en el repositorio de Git ha cambiado de nombre a "main".

Fuente: opennet.ru

Añadir un comentario