Se ha publicado la versión del paquete wayland-protocols 1.26, que contiene un conjunto de protocolos y extensiones que complementan las capacidades del protocolo base Wayland y ofrecen las funcionalidades necesarias para construir servidores compuestos y entornos de usuario.
Todos los protocolos pasan por tres fases: desarrollo, pruebas y estabilización. Tras completar la fase de desarrollo (categoría «unstable»), el protocolo se coloca en la rama «staging» y se incluye oficialmente en el conjunto de wayland-protocols, y después de finalizar las pruebas, se mueve a la categoría estable. Los protocolos en la categoría «staging» ya se pueden aplicar en servidores compuestos y clientes donde se requiere la funcionalidad relacionada. A diferencia de la categoría «unstable», en «staging» están prohibidos los cambios que rompan la compatibilidad, pero en caso de detectar problemas o defectos durante las pruebas, no se descarta la sustitución por una nueva versión significativa del protocolo u otra extensión de Wayland.
En la nueva versión:
- Se ha añadido el protocolo single-pixel-buffer a la categoría «staging», permitiendo la creación de búferes de un solo píxel que incluyen cuatro valores de 32 bits RGBA. A través del protocolo viewporter, los servidores compuestos pueden escalar búferes de un solo píxel para crear superficies de color homogéneo de tamaño arbitrario.
- En el protocolo xdg_shell, que proporciona una interfaz para interactuar con superficies como si fueran ventanas, lo que permite mover superficies por la pantalla, minimizarlas, maximizarlas, cambiar su tamaño, etc., se ha añadido soporte para compuestos servidores, que implementan solo una parte de las operaciones de control de ventanas propuestas en xdg_shell. Se ha propuesto el evento wm_capabilities para transmitir información sobre las capacidades disponibles en el compuesto. servidor возможностей предложено событие wm_capabilities.
- En el protocolo text-input, se han reescrito las formulaciones que llevaban a interpretaciones ambiguas y se han añadido aclaraciones sobre el comportamiento implícito.
- Se ha prescrito el uso de la terminología definida en RFC 2119.
Actualmente, el conjunto de wayland-protocols incluye los siguientes protocolos estables, que garantizan la compatibilidad hacia atrás:
- «viewporter» — permite al cliente realizar acciones de escalado y recorte de los bordes de la superficie del lado del servidor.
- «presentation-time» — proporciona la visualización de video.
- «xdg-shell» — interfaz para crear e interactuar con superficies como si fueran ventanas, lo que permite moverlas en la pantalla, minimizarlas, maximizar, cambiar su tamaño, etc.
Protocolos en prueba en la rama «staging»:
- drm-lease — proporciona los recursos necesarios para formar la imagen estereoscópica con diferentes búferes para el ojo izquierdo y derecho al visualizarla en cascos de realidad virtual.
- «ext-session-lock» — define los medios para bloquear la sesión, por ejemplo, durante la operación del salvapantallas o al mostrar un diálogo de autenticación.
- «single-pixel-buffer» — permite crear búferes de un solo píxel que incluyen cuatro valores RGBA de 32 bits.
- «xdg-activation» — permite transferir el enfoque entre diferentes superficies de primer nivel (por ejemplo, mediante xdg-activation, una aplicación puede cambiar el enfoque a otra).
Protocolos en desarrollo en la rama «unstable»:
- «fullscreen-shell» — gestión del trabajo en modo de pantalla completa.
- «input-method» — procesamiento de métodos de entrada.
- «idle-inhibit» — bloqueo del inicio del salvapantallas.
- «input-timestamps» — marcas de tiempo para eventos de entrada.
- «keyboard-shortcuts-inhibit» — gestión de la asignación de combinaciones de teclas y teclas de acceso rápido.
- «linux-dmabuf» — compartir varias tarjetas gráficas mediante la tecnología DMABuff.
- «linux-explicit-synchronization» — mecanismo de sincronización de búferes específico de Linux vinculado a la superficie.
- «pointer-gestures» — gestión desde pantallas táctiles.
- «pointer constraints» — restricciones de punteros (bloqueo).
- «primary-selection» — al igual que en X11, permite el funcionamiento del portapapeles primario, la inserción de información del cual generalmente se realiza con el botón del medio del ratón.
- «relative pointer events» — eventos de puntero relativos.
- «tablet» — soporte para entrada desde tabletas.
- «text-input» — organización de la entrada de texto.
- «xdg-foreign» — interfaz de interacción con superficies de otros clientes.
- «xdg-decoration» — renderización de decoraciones de ventanas en el lado del servidor.
- «xdg-output» — información adicional sobre la salida de video (se utiliza para escalado fraccionado).
- «xwayland-keyboard-grab» — captura de entrada en aplicaciones de XWayland.
Fuente: opennet.ru
