The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Доступен GTK+ 3.94, экспериментальный выпуск GTK+ 4 "
Отправлено opennews, 27-Июн-18 13:28 
Представлен (https://blog.gtk.org/2018/06/26/gtk-3-94/) очередной тестовый выпуск будущего стабильного релиза GTK+ 4. Ветка  GTK+ 4 развивается в рамках нового процесса разработки, который пытается предоставить разработчикам приложений стабильный и поддерживаемый в течение нескольких лет API, который можно использовать не опасаясь, что каждые полгода  придётся переделывать приложение из-за изменения API в очередной ветке GTK+. До полной стабилизации GTK+ 4, приложения, предлагаемые для пользователей, рекомендуется продолжить собирать с использованием ветки GTK+ 3.22, на смену которой в сентябре придёт (https://www.opennet.ru/opennews/art.shtml?num=48834) финальная ветка 3.24.

Основные изменения (ftp://ftp.gnome.org/pub/gnome/sources/gtk+/3.94/gtk+-3.94.0....) в GTK+ 3.94:

-  В API GSK (https://wiki.gnome.org/Projects/GTK+/Gsk) (GTK Scene Kit), обеспечивающем отрисовку графических сцен через OpenGL и Vulkan, представлен новый тип узлов рендеринга -  GskOffsetNode, являющихся упрощённым вариантом  GskTransformNode, выполняющим работу по трансляции контента при перемещении вверх или вниз по дереву узлов рендеринга (render node tree). Данная возможность позволила реализовать кэширование узлов рендеринга для разных кадров виджетов, при необходимости осуществляя изменение позиции узла. В GSK также добавлен вызов GskDebugNodes для упрощения отладки процесса создания узлов рендеринга в приложениях и операция gsk_render_node_diff для  оценки различий между двумя  деревьями узлов;
-  В бэкенд Broadway, позволяющий отрисовывать вывод библиотеки GTK+ в окне web-браузера, добавлена реализации вызова GskRenderer;
-  При откате отрисовки с GSK на Cairo теперь применяется записываемые  поверхности (recording surface)  вместо поверхности в форме изображения (image surface), что позволяет в дальнейшем повторить отрисовку в другом масштабе;

-  В GDK продолжена модернизация API в контексте применения Wayland вместо X. Например, GdkWindow переименован в GdkSurface для соответствия терминологии Wayland. В класс GdkTexture добавлены подклассы GdkMemoryTexture и GdkGLTexture  и новый уровень абстракции GdkPaintable (представляет объекты, которые можно нарисовать где угодно с любым размером, без необходимости выполнения сортировки layout-слоёв);

-  Добавлена возможность отображения видео при помощи виджетов  GtkVideo и GtkMediaControls;
-  Добавлен новый виджет GtkPicture для разделения функций просмотра изображений и пиктграмм с виджетом GtkImage;
-  В виджет GtkFontChooser добавлена поддержка изменения параметров шрифтов OpenType, в том числе настройки изменчивых шрифтов;
-  Комбинация Ctrl-Shift-e для ввода Emoji заменена на систему дополнения ввода, активируемую при помощи свойства GtkEntry::enable-emoji-completion;
-  Добавлены новые типы контроллеры событий ввода GtkEventControllerMotion,  GtkEventControllerKey и   GtkGestureStylus, которые пришли на смену старой системе доставки событий ввода. Контроллеры ввода в том числе можно создавать в файлах ".ui". Для Wayland задействована собственная платформа методов ввода, базирующаяся на протоколе  Wayland;

-  Прекращена поддержка сигнала "::draw", вместо которого во всех виджетах следует реализовать сигнал "::snapshot", по которому создаётся собственный экземпляр  GtkSnapshot для промежуточной отрисовки. При этом выход за границы области виджета больше не обрезается и виджет может выполнять отрисовку за своими пределами;

-  Изменён механизм аннулирования виджета, который теперь действует через очистку связанных с виджетом прокэшированных узлов в дереве рендеринга с последующим воссозданием недостающих в кэше частей дерева рендеринга. Для определения областей, которые следует перерисовать, выполняется сравнение состояния дерева рендеринга до и после текущего кадра. В GTK+ inspector добавлена возможность отслеживания аннулирования виджетов:

-  Прекращена поддержка загружаемых модулей. Ранее применяемые модули с поддержкой методов ввода, бэкендов вывода на печать и мультимедийных бэкендов преобразованы в можули GIOModules и расширения. Модули поддержки систем ввода на уровне платформ (im-модули для Windows, Wayland, Broadway) теперь всегда включены и активируются по умолчанию на связанных с ними платформ;

-  В код поддержки API Vulkan в GDK добавлена возможность выбора устройства вывода через переменую окружения  GDK_VULKAN_DEVICE (список доступных устройств можно посмотреть указав GDK_VULKAN_DEVICE=list).

URL: https://blog.gtk.org/2018/06/26/gtk-3-94/
Новость: https://www.opennet.ru/opennews/art.shtml?num=48853

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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