Увидел свет (https://lists.freedesktop.org/archives/wayland-devel/2016-Se...) стабильный релиз протокола, механизма межпроцессного взаимодействия и библиотек Wayland 1.12, а также развиваемый параллельно композитный сервер Weston 1.12 (https://lists.freedesktop.org/archives/wayland-devel/2016-Se...). Одновременно сформированы корректирующие выпуски Wayland 1.11.1 (https://lists.freedesktop.org/archives/wayland-devel/2016-Se...) и Weston 1.11.1 (https://lists.freedesktop.org/archives/wayland-devel/2016-Se...), в которых проведено бэкпортирование некоторых исправлений из ветки 1.12. Ветка 1.12 обратно совместима на уровне API и ABI с выпусками 1.x, но дополнительно содержит порцию улучшений, расширяющих возможности композитного сервера Weston. Следующий выпуск 1.13 запланирован на февраль 2017 года.
В Weston развиваются технологии, содействующие появлению полноценной поддержки протокола Wayland в Enlightenment, GNOME, KDE и других пользовательских окружениях. Разработка Weston нацелена на предоставление высококачественной кодовой базы и рабочих примеров для использования Wayland в десктоп-окружениях и встраиваемых решениях, таких как платформы для автомобильных информационно-развлекательных систем, смартфонов, телевизоров и прочих потребительских устройств.
Основные новшества (https://blogs.s-osg.org/whats-new-wayland-weston-1-12/) Weston 1.12:
- Внутренний код Weston вынесен в обособленную библиотеку libweston, что упрощает задействование функциональности Weston в других композитных серверах. В том числе новую библиотеку теперь использует и собственный композитный сервер Weston;
- Представлена новая библиотека libweston-desktop, в которую по аналогии с libweston вынесены дополнительные возможности, востребованные при формировании окружения рабочего стола. API библиотеки построен вокруг программного интерфейса xdg_shell (https://people.freedesktop.org/~whot/wayland-doxygen/wayland...) и предлагает такие возможности как средства для обработки состояний окна, всплывающие окна и взаимодействие с Xwayland. Библиотеки libweston и libweston-desktop пока позиционируются как нестабильные, что подразумевает возможное изменение API в следующих выпусках;
- Реализована поддержка 6 версии протокола xdg_shell и весь клиентский код портирован на неё;
- Добавлен API для захвата и ограничения перемещения указателя. Используя протокол wp_pointer_constraints клиенты могут определить области окна за пределы которых не сможет выйти указатель. Области могут иметь произвольную форму, не ограничивающуюся прямоугольником;
- Добавлен протокол wl_relative_pointer, при помощи которого клиенты могут получать сведения о движении указателя в виде смещений относительно прошлой позиции, что позволяет продолжить получать сведения о движении даже при невозможности изменения абсолютной позиции, например, при достижении края экрана;
- Прекращена поддержка бэкенда для устройств Raspberry Pi (rpi-backend), так как код был привязан к проприетарному стеку драйверов.
Улучшения, связанные с протоколом и API Wayland 1.12:
- Проведена работа по чистке и уточнению документации. Добавлены описания для ранее не документированных областей протокола;
- Добавлен API wl_display_add_protocol предоставляющий средства для интерактивной отладки запросов, а также API для изучения клиентов и их ресурсов. В отличие от режима WAYLAND_DEBUG=1, новый API позволяет анализировать логи на лету, в том числе наглядно визуализируя в пользовательском интерфейсе;
- Внесены улучшения в метод идентификации версий в заголовочных файлах при сканировании XML-спецификаций проткола, что позволило более качественно выявлять и откатываться на другую версию в случаях, когла клиенты и композитные серверы поддерживают разные версии протокола.
Статус поддержки Wayland в окружениях рабочего стола и дистрибутивах:
- В GNOME 3.22, который ожидается сегодня вечером, проведено оттачивание поддержки Wayland, которая в прошлом выпуске была объявлена пригодной для использования обычными пользователями. В том числе при работе GNOME поверх Wayland появилась поддержка планшетов Wacom, вращения экрана и экранной клавиатуры. Полноценная поддержка Wayland появилась (https://www.opennet.me/opennews/art.shtml?num=45179) в WebKitGTK+ 2.14;
- Разработчики Fedora Linux в очередной раз утвердили план по переходу Fedora 25 на использование по умолчанию окружения рабочего стола GNOME на базе Wayland. Некоторые проблемы пока остаются нерешёнными, но до релиза Fedora 25 разработчики намерены успеть их устранить;
- Экспериментальный сеанс рабочего стола GNOME на базе Wayland поставляется (https://www.opennet.me/opennews/art.shtml?num=44288) в Ubuntu GNOME (следует установить пакет gnome-session-wayland и выбрать на экране входа "GNOME on wayland");
- Наблюдается значиетельный прогресс поддержке Wayland в KDE. Принято решение по переходу по умолчанию на использование Wayland нестабильных выпусков Live-cборок KDE Neon (unstable-ветка Developer Edition), формируемых на основе срезов из Git-репозиториев KDE. KWayland принят в состав KDE Frameworks 5 в качестве фреймворка первого уровня, т.е. является функциональным дополнением к Qt и, кроме Qt, не требует дополнительных зависимостей. В находящемся в разработке выпуске KDE Plasma 5.8 (https://www.opennet.me/opennews/art.shtml?num=45159)
продолжается работа по достижению паритета в функциональности при работе KDE поверх X11 и Wayland. В реализации пока остаются незначительные проблемы и не вся запланированная функциональность реализована, но окружение уже пригодно для оценки и тестирования широкой аудиторией;
- В состав Qt 4.7 (https://www.opennet.me/opennews/art.shtml?num=44614) добавлен модуль Qt Wayland Compositor с многопоточной системой отрисовки для встраиваемых устройств, использующая протокол Wayland. Модуль может использоваться для создания собственных композитных серверов Wayland, применяя QML или C++ API. В состав также входит базовая реализация панели запуска программ и мозаичного оконного менеджера, написанных целиком на QML. Имеется поддержка стандарта XDG-Shell и возможность работы в системах с несколькими экранами. В выпуске Qt 4.8 (https://www.opennet.me/opennews/art.shtml?num=45085) будет проведена стабилизация модуля Wayland Compositor, с которого будет снят флаг экспериментальной разработки;
- В Enlightenment 0.21 (https://www.opennet.me/opennews/art.shtml?num=44707) существенно улучшена поддержка Wayland, в том числе обеспечено восстановление сеанса после краха/перезапуска композитного сервера и добавлены реализуемые на стороне клиента эффекты, такие как трансформация окон;
- В ОС DragonFly BSD развивается (https://www.opennet.me/opennews/art.shtml?num=43138) порт с Wayland и Weston. Обеспечена (http://lists.dragonflybsd.org/pipermail/users/2016-May/24962...) поддержка XWayland;
- Wayland задействован по умолчанию в мобильных платформах Plasma Mobile (https://www.opennet.me/opennews/art.shtml?num=42668), Sailfish 2 (https://www.opennet.me/opennews/art.shtml?num=42944) и Tizen 3 (https://www.opennet.me/opennews/art.shtml?num=42978).
- В панели Cairo-Dock реализована (https://www.opennet.me/opennews/art.shtml?num=40906) возможность работы в окружении композитного сервера Weston.
- Работа по добавлению поддержки Wayland ведётся для рабочих столов LXQt (https://www.opennet.me/opennews/art.shtml?num=41633) и MATE (https://www.opennet.me/opennews/art.shtml?num=39106).
- Развиваются новые десктоп-окружения, работающее только на базе технологий Wayland: Quantum Shell (https://www.opennet.me/opennews/art.shtml?num=41108), Hawaii (https://www.opennet.me/opennews/art.shtml?num=38730) и Orbital (https://www.opennet.me/opennews/art.shtml?num=38934).
- Для тестирования работы GNOME, KDE и Enlightenment, Hawai и Orbital поверх Wayland в...
URL: https://lists.freedesktop.org/archives/wayland-devel/2016-Se...
Новость: http://www.opennet.me/opennews/art.shtml?num=45186