Extensiones Shell - Qt Wayland Compositor
En Wayland, los shells son extensiones que proporcionan semántica de superficie. Esto significa que proporcionan formas para que el servidor y el cliente se comuniquen sobre superficies. Las superficies, en este contexto, a menudo también se denominan "ventanas", que es típicamente la representación de la superficie en el compositor.
Las extensiones de shell proporcionan herramientas para que el cliente y el servidor se comuniquen sobre ciertas cosas:
- Pueden proporcionar una manera para que el cliente informe al servidor sobre el propósito de una superficie: ¿Es un tool-tip, un menú emergente o una ventana de aplicación normal, por ejemplo? A partir de ahí, el servidor puede decidir la geometría de la ventana y cómo puede interactuar el usuario con ella.
- También pueden proporcionar protocolos para manipular la superficie, como redimensionarlas, moverlas y ocultarlas.
Al igual que otras extensiones, el soporte para shells se añade a un compositor instanciándolos como hijos directos del objeto de nivel superior WaylandCompositor. Las extensiones de shell soportadas por Qt son: WlShell XdgShell y IviApplication.
- XdgShell es un shell apropiado para sistemas de escritorio, donde cualquier número de aplicaciones pueden conectarse y donde las ventanas pueden ser redimensionadas y reposicionadas manualmente por el usuario.
- IviApplication es un protocolo minimalista, pensado originalmente para sistemas de In-Vehicle Infotainment. Es útil para sistemas integrados, donde puede ejecutarse un conjunto predefinido de aplicaciones, a menudo con un espacio de pantalla preasignado. Para más detalles sobre este protocolo, consulte el ejemplo IVI Compositor.
- QtShell es un shell especializado para aplicaciones Qt que soporta las características de gestión de ventanas disponibles en Qt. Puede ser adecuado en una plataforma en la que tanto el compositor y las aplicaciones cliente están escritas con Qt, y donde las aplicaciones se confía en no abusar de características tales como el posicionamiento manual de la ventana y "bring-to-front".
- WlShell es sobre todo útil para la compatibilidad con aplicaciones de terceros. Este es también un shell estilo escritorio, pero ha sido obsoleto y reemplazado por XdgShell.
Cuando se diseña un sistema embebido desde la base, no hay reglas que determinen qué extensión de shell utilizar. Normalmente será XdgShell o IviApplication. La decisión debería estar influenciada por qué características necesitará el sistema, y si hay aplicaciones involucradas que no estén escritas en Qt y que tengan sus propios requisitos.
Un Qt Wayland Compositor también puede soportar múltiples extensiones de shell a la vez. Véase el ejemplo Minimal QML para ver un ejemplo en el que se soportan las tres extensiones de shell mencionadas anteriormente.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.