The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Доступен графический тулкит GTK 4.20

29.08.2025 23:01

После шести месяцев разработки опубликован релиз многоплатформенного тулкита для создания графического интерфейса пользователя - GTK 4.20. GTK 4 развивается в рамках процесса разработки, который пытается предоставить разработчикам приложений стабильный и поддерживаемый в течение нескольких лет API, который можно использовать не опасаясь, что каждые полгода придётся переделывать приложения из-за изменения API в очередной ветке GTK.

Среди заметных улучшений в GTK 4.20:

  • Для поддержки методов ввода задействован Wayland-протокол text-input. Для работы с композитными серверами без поддержи данного протокола можно вручную выставить переменную окружения "GTK_IM_MODULE=simple", возвращающую поддержку стиле X11 compose-последовательностей и клавиш для ввода диакритических знаков.
  • Добавлена поддержка Wayland-протокола wl_seat_v10 и обработки на стороне сервера событий повторного нажатия, генерируемых при удержании клавиши.
  • При использовании Wayland добавлена поддержка обработки ограничений операций с краями поверхности верхнего уровня (xdg-toplevel edge constraint). Возможность позволяет композитному менеджеру информировать Wayland-клиентов об имеющихся ограничениях, например, о том, могут ли окна изменять свои размеры или нет.
  • Добавлена поддержка Wayland-протокола "tablet-v2" для организации ввода с графических планшетов.
  • Улучшена обработка прокрутки при использовании Wayland.
  • Для привязки пиктограммы к окнам в задействован Wayland-протокол xdg-toplevel-icon.
  • Проведена чистка и упрощение всех символьных пиктограмм и ресурсов тем оформления, которые теперь могут быть обработаны встроенным парсером формата SVG. Прекращена поставка символьных пиктограмм и ресурсов тем в формате PNG.
  • Расширены возможности по созданию тем оформления на базе CSS. Добавлена поддержка медиа-запросов для цветовой схемы. Реализована функция light-dark(). Улучшена настройка градиентов. Переработан код для отображения тени для текста.
  • Улучшена обработка полей ввода паролей с учётом средств для людей с ограниченными возможностями.
  • Реализована возможность вызова приложения gnome-papers для предпросмотра вывода на печать. Добавлена поддержка xdg-портала для организации вывода на печать.
  • В утилиты для разработчиков добавлены компоненты для автодополнения ввода в bash. В утилиту gtk4-rendernode-tool добавлена опция "--offload". В утилите инспектирования обеспечен вывод информации об операционной системе и улучшена визуализация событий. В gtk4-path-tool добавлена поддержка показа пересечений путей и реализованы возможности для работы в интерактивном режиме. В gtk4-demo добавлены демонстрации "Path Explorer", "Sweep" и "Image Filtering".
  • В отладчик добавлена комбинация Super+F для сохранения одного кадра. Добавлена режим GTK_DEBUG=touch-ui для тестирования интерфейсов для сенсорных экранов.
  • В редактор CSS добавлены элементы для изменения цветовой схемы и контраста.
  • В библиотеке GSK (GTK Scene Kit), предоставляющей возможности отрисовки графических сцен через OpenGL и Vulkan, добавлен API gsk_path_foreach_intersection для вычисления пересечений путей. Улучшена отрисовка текста. Добавлены оптимизации производительности, например, реализован кэш масок для заливки. Предложены концепции загружаемых, не загружаемых и субсемплированных изображений.
  • В библиотеке GDK, предоставляющей прослойку между GTK и графической подсистемой, улучшена обработка изменения размера окон и добавлена поддержка относительных координат при работе с планшетами.
  • На платформе Android реализована корректная поддержка мультитач и начальная поддержка IME (Input Method Editor).
  • Для платформы Windows добавлен API для работы с текстурами через D3D12. Улучшена поддержка WGL. Задействованы D3D11/D3D12 и DirectComposition.
  • Добавлена поддержка многослойных форматов текстур.
  • В виджете GtkVideo реализована поддержка форматов YUV. Бэкенд gstreamer портирован на использование GskPlay. Улучшена поддержка форматов с субсемплингом. Добавлена поддержка программных декодеров для форматов с глубиной цвета 10, 12 и 16 бит.
  • Класс GtkApplication переведён на использование порталов xdg вместо обращения к менеджеру сеансов.
  • В класс GtkBuilder добавлена поддержка трансляции выражений с константами.
  • В классе GtkIconTheme разрешено перечёркивание символьных пиктограмм и добавлен парсер для SVG-файлов. В число обязательных зависимостей переведена библиотека librsvg.
  • Для работы теперь требуется поддержка wayland-protocols 1.44 и наличие расширений wl_output-v2 и xdg_output-v3.
  • Объявлены устаревшими бэкенд Broadway (отрисовка в окне web-браузера), API Pixbuf, свойство GtkApplication:register-session и настройка gtk-application-prefer-dark.


  1. Главная ссылка к новости (https://gitlab.gnome.org/GNOME...)
  2. OpenNews: Доступен графический тулкит GTK 4.18
  3. OpenNews: Ardour прекратил поддержку сборки с GTK2 в пользу форка YTK
  4. OpenNews: Эксперимент по использованию AI для перевода приложения с GTK2 и OpenGL на GTK4 и Vulkan
  5. OpenNews: GTK перевёл бэкенд для X11 в разряд устаревших
  6. OpenNews: Инициатива по портированию Firеfox на GTK4
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63795-gtk
Ключевые слова: gtk
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (3) RSS
  • 1, Bottle (?), 23:25, 29/08/2025 [ответить]  
  • +/
    >GTK 4 развивается в рамках процесса разработки, который пытается предоставить разработчикам приложений стабильный и поддерживаемый в течение нескольких лет API, который можно использовать не опасаясь, что каждые полгода придётся переделывать приложения из-за изменения API в очередной ветке GTK.

    Жаль только это к самому гному не относится.

     
  • 2, Аноним (2), 00:05, 30/08/2025 [ответить]  
  • +1 +/
    > стабильный и поддерживаемый в течение нескольких лет API

    хорошо хоть не в течении нескольких месяцев...

     
  • 3, Аноним (3), 00:40, 30/08/2025 [ответить]  
  • +/
    > Объявлены устаревшими [..] API Pixbuf

    А что на замену?

     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру