Разработчики проекта Wayland сообщили о создании отдельного репозитория для разработки дополнительных протоколов Wayland, расширяющих возможности базового (core) протокола в направлении предоставления дополнительной функциональности, востребованной при разработке композитных серверов и пользовательских окружений. Дополнительные протоколы будут развиваться в репозитории wayland-protocols, независимо от базового протокола Wayland, библиотек Wayland и композитного сервера Weston.

Протоколы будут разрабатываться в рамках отдельного цикла разработки, не связанного с традиционными релизами Wayland и Weston, что позволит обеспечить гибкость в развитии дополнительной функциональности. Отделение протоколов от Wayland и Weston также даст возможность обособленной разработки экспериментальных протоколов, без необходимости добавления их поддержки в актуальных выпусках Weston.

Выделены три категории протоколов - стабильные, экспериментальные и устаревшие, которые могут как реализовывать принципиально новые возможности, так и расширять функциональность, имеющуюся в базовом протоколе или протоколах-надстройках. К категории стабильных протоколы будут причисляться по решению мэйнтейнеров. Изменения в стабильных протоколах должны всегда обеспечивать обратную совместимость. К нестабильным относятся протоколы находящиеся в разработке и не гарантирующие сохранение совместимости с прошлыми выпусками. Имена интерфейсов в подобных протоколах будут отмечены специальным префиксом ("zwp_"). К устаревшим будут отнесены протоколы, заменённые другими протоколами или признанные нецелесообразными. Изменения в устаревших протоколах не допускаются.

В настоящее время доступно шесть нестабильных протоколов: "fullscreen-shell" для управления работой в полноэкранном режиме, "input-method" с описанием методов ввода, "linux-dmabuf" для совместного использования нескольких видеокарт при помощи технологии DMABuff, text-input для организации ввода текста, "pointer-gestures" для управления с сенсорных экранов и "xdg-shell" c XDG-расширениями для рабочего стола. Готовятся к реализации протоколы "viewporter" со средствами масштабирования, "presentation timing" для организации отображения видео, "tablet" для поддержки ввода с планшетов, "relative pointer" со средствами относительного позиционирования указателя и "pointer constraints" для ограничения перемещения укзателя.

Источник: http://www.opennet.ru/opennews/art.shtml?num=43338