GNOME Project выпустила четвёртую версию кроссплатформенной библиотеки элементов интерфейсов GTK. В библиотеку добавили метод раскладки элементов на основе ограничений, модуль отрисовки с API Vulkan, интегрировали GSK и удалили часть API.
За четыре года разработки команда добавила более 18 тыс. коммитов и сделала 20 ночных сборок.
Часть изменений:
- Новый метод constraint layout определяет положение и размер элементов интерфейса относительно расстояния других элементов.
- В GTK интегрировали Scene Kit с возможностью отрисовки графических сцен с использованием Vulkan и OpenGl.
- Из API удалены многие классы, в том числе GtkMenu, GtkMenuBar и GtkToolbar
- Добавлен новый объект GtkLayoutManager, предназначенный для разработки виджетов с использованием системы управления раскладкой элементов в зависимости от размера видимой области.
- Добавлены средства для воспроизведения мультимедиа, поддержка формата WebM и потокового вещания.
- Новый GDK бэкэнд для macOS
- Добавлены методы для работы с drag-and-drop
Разработчики рассказали, что будут поддерживать и обновлять GTK 3 в «обозримом будущем». Они надеются, что популярные библиотеки Vte, WebKit и GtkSourceView скоро обновятся под GTK 4.0. GNOME project запланировали релиз следующей версии на лето, однако возможен перенос релиза на более ранний срок для исправлений критических проблем.
Фреймворк GTK — набор инструментов для создания графических пользовательских интерфейсов. Он появился как часть редактора GIMP, потом вырос в отдельный проект с лицензией GNU LGPL. GTK — основа для разработки GNOME. Также фреймворк используют для написания приложений под другие среды Linux, Windows и macOS.