Публикувано е издание на пакета 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» — управление на работа в fullscreen режим;
- «input-method» — обработка на методи за въвеждане;
- «idle-inhibit» — блокиране на стартирането на screensaver (екранна заставка);
- «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 едно приложение може да прехвърли фокуса на друго).
Източник: opennet.ru
