Выпуск wayland-protocols 1.21
Опубликован релиз пакета wayland-protocols 1.21, содержащего набор протоколов и расширений, дополняющих возможности базового протокола Wayland и предоставляющих возможности, необходимые для построения композитных серверов и пользовательских окружений.
Начиная с выпуска 1.21 стадия развития протколов «unstable» заменена на «staging», для того чтобы сгладить процесс стабилизации протоколов, прошедших тестирование в рабочих окружениях. Все протоколы последовательно проходят три фазы — разработка, тестирование и стабилизация. После завершения стадии разработки протокол помещается в ветку «staging» и включается в состав набора wayland-protocols, а после завершения тестирования перемещается в категорию стабильных. Протоколы из категории «staging» уже можно применять в композитных серверах и клиентах, где требуется связанная с ними функциональность. В категории «staging» запрещено внесение изменений, нарушающих совместимость, но в случае выявление проблем и недоработок в ходе тестирования, не исключается замена новой значительной версией протокола или или другим Wayland-расширением.
В новой версии реализована возможность установки с использованием системы сборки Meson вместо autotools. В будущем планируется полностью прекратить поддержку autotools. В категорию staging добавлен новый протокол xdg-activation, позволяющий передать фокус между разными поверхностями первого уровня. Например, при помощи xdg-activation один интерфейс для запуска приложений может передать фокус другому интерфейсу или одно приложение может переключить фокус на другое. Поддержка xdg-activation уже реализована для Qt, GTK, wlroots, Mutter и KWin.
В настоящее время в состав wayland-protocols входят следующие стабильные протоколы, в которых обеспечивается обратная совместимость:
- «viewporter» — позволяет клиенту выполнять действия по масштабированию и обрезанию краёв поверхности на стороне сервера.
- «presentation time» — обеспечивает отображение видео.
- «xdg-shell» — интерфейс создания и взаимодействия с поверхностями как с окнами, что позволяет их передвигать по экрану, сворачивать, разворачивать, изменять размер и т.д.
Протоколы, тестируемые в ветке «staging»:
- «fullscreen-shell» — управление работой в полноэкранном режиме;
- «input-method» — обработка методов ввода;
- «idle-inhibit» — блокировка запуска скринсейвера (экранной заставки);
- «input-timestamps» — временные метки для событий ввода;
- «linux-dmabuf» — совместное использование нескольких видеокарт при помощи технологии DMABuff;
- «text-input» — организация ввода текста;
- «pointer-gestures» — управление с сенсорных экранов;
- «relative pointer events» — относительные события указателей;
- «pointer constraints» — ограничения указателей (блокировка);
- «tablet» — поддержка ввода с планшетов.
- «xdg-foreign» — интерфейс взаимодействия с поверхностями «соседнего» клиента;
- «xdg-decoration» — отрисовка декораций окон на стороне сервера;
- «xdg-output» — дополнительные сведения о видеовыходе (используется для дробного масштабирования);
- «xwayland-keyboard-grab» — захват ввода в приложениях XWayland.
primary-selection — по аналогии с X11 обеспечивает работу первичного буфера обмена (primary selection), вставка информации из которого обычно осуществляется средней кнопкой мыши;
- linux-explicit-synchronization — специфичный для Linux механизм синхронизации буферов в привязке к поверхности.
xdg-activation — позволяет передать фокус между разными поверхностями первого уровня (например, при помощи xdg-activation одно приложение может переключить фокус на другое).
Источник: http://www.opennet.ru/opennews/art.shtml? num=55075
© OpenNet