Издание на Wayland-Protocols 1.31

Публикувана версия на пакета wayland-protocols 1.31, която съдържа набор от протоколи и разширения, които допълват възможностите на основния протокол Wayland и предоставят необходимите функции за изграждане на композитни сървъри и потребителски среди.

Все протоколы последовательно проходят три фазы — разработка, тестирование и стабилизация. После окончания этапа разработки (категория «unstable») протокол перемещается в ветку «staging» и официально включается в состав набора wayland-protocols, а после завершения тестирования переходит в категорию стабильных. Протоколы из категории «staging» могут уже применяться в композитных серверах и клиентах, где требуется связанная с ними функциональность. В отличие от категории «unstable», в «staging» запрещены изменения, нарушающие совместимость, но в случае выявления проблем и недоработок в процессе тестирования возможна замена на новую значительную версию протокола или другое расширение Wayland.

Новата версия е публикувана седмица след издаването на Wayland-Protocols 1.30, в който беше добавена поддръжка на протокола tearing-control за изключване на вертикалната синхронизация. В версия 1.31 към категорията „staging“ е добавен протокол fractional-scale, чрез който композитният мениджър може да предава нецелочислени стойности за мащабиране на повърхностите, което позволява на клиента да определи по-точен размер на буферите за обектите wp_viewport в сравнение с предаването на закръглени данни за мащабиране. Реализациите на протокола fractional-scale са подготвени за wlroots, KWin и glfw.

В настоящее время в состав wayland-protocols входят следующие стабильные протоколы, обеспечивающие обратную совместимость:

  • viewporter» — позволява на клиента да извършва операции по мащабиране и изрязване на ръбовете на повърхността от страната на клиента. сървър.
  • «presentation-time» — обеспечивает отображение видео.
  • «xdg-shell» — интерфейс для создания и взаимодействия с поверхностями как с окнами, что позволяет их передвигать по экрану, сворачивать, разворачивать, изменять размер и т.д.

Протоколы, тестируемые в ветке «staging»:

  • drm-lease — предоставя ресурси, необходими за формиране на стереоизображение с различни буфери за лявото и дясното око при изход на шлемове за виртуална реалност.
  • «ext-session-lock» — определя средствата за блокиране на сесията, например, по време на работа на екранната защита или изход на диалог за удостоверяване.
  • «single-pixel-buffer» — позволява създаване на однопикселови буфери, включващи четири 32-битови стойности RGBA.
  • «xdg-activation» — позволява прехвърляне на фокуса между различни повърхности на първо ниво (например, с помощта на xdg-activation едно приложение може да пренасочи фокуса към друго).
  • content-type — позволява на клиентите да предават композитната сървъра информация за показваното съдържание, която може да се използва за оптимизация на поведението в зависимост от съдържанието, например, задаване на специфични DRM свойства, като «content type». Заявена е поддръжка на следните типове съдържание: none (няма информация за типа данни), photo (изход на цифрови снимки, изисква минимална обработка), video (видео или анимация, изискваща по-точна синхронизация, за да се изключат забавяния) и game (стартиране на игри, изискващо изход с минимална латентност).
  • ext-idle-notify — предоставя възможност на композитните сървъри да предават на клиентите уведомления за неактивност на потребителя, което може да се използва за активиране на допълнителни режими на пестене на енергия след определен период на неактивност.
  • tearing-control — позволява деактивиране на вертикалната синхронизация (VSync) в приложения на цял екран с кадров импулс за гасене, използван за защита от появата на разкъсвания при изход (tearing). В мултимедийните приложения появата на артефакти поради разкъсвания е нежелан ефект, но в игровите програми е възможно да се понесат артефакти, ако справянето с тях води до допълнителни забавяния.

Протоколите, разработвани в клона «unstable»:

  • «fullscreen-shell» — управление на работата в режим на цял екран.
  • «input-method» — обработка на методите за въвеждане.
  • «idle-inhibit» — предотвратяване на стартиране на екранната заставка.
  • «input-timestamps» — времеви печати за входни събития.
  • «keyboard-shortcuts-inhibit» — контрол на привързаността на клавишни комбинации и бързи клавиши.
  • «linux-dmabuf» — споделяне на няколко видеокарти с помощта на технологията dma-buf.
  • «linux-explicit-synchronization» — специфичен за Linux механизъм за синхронизация на буферите, свързан с повърхността.
  • «pointer-gestures» — управление на сензорни екрани.
  • «pointer constraints» — ограничения на указателите (блокиране).
  • «primary-selection» — подобно на X11 осигурява работа с основния буфер за обмен (primary selection), чийто вариант обикновено се вмъква с средния бутон на мишката.
  • «relative pointer events» — относителни събития на указатели.
  • «tablet» — поддръжка на вход от таблети.
  • «text-input» — организация на въвеждане на текст.
  • «xdg-foreign» — интерфейс за взаимодействие с повърхности на «съседен» клиент.
  • «xdg-decoration» — отразяване на декорации на прозорците от страна на сървъра.
  • «xdg-output» — допълнителна информация за видеовыхода (използва се за дробно мащабиране).
  • «xwayland-keyboard-grab» — захващане на входа в приложенията XWayland.
  • Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster