Espera-se que o Qt 6.3 chegue nas próximas semanas e com ele vem o suporte aprimorado do Wayland, juntamente com a capacidade dos desenvolvedores de criar facilmente extensões de shell personalizadas.
O lançamento do Qt 6.3.0 está chegando, e eu queria compartilhar algumas atualizações que fizemos para a integração do Qt Wayland e seu módulo complementar Qt Wayland Compositor.
Também usarei isso como uma oportunidade para apresentar alguns conceitos básicos para aqueles que ainda não estão familiarizados com Wayland, e fornecer algumas informações/justificativas de como as coisas funcionam atualmente, afirma o desenvolvedor Eskil Abrahamsen Blomfeldt.
Enquanto o Qt já suporta XdgShell e IviApplication (junto com o antigo WlShell), com o Qt 6.3 existe uma API pública para permitir a criação de protocolos shell personalizados para Wayland. Escrever extensões de shell personalizadas agora é considerado um caso de uso suportado a partir do Qt 6.3.
Para quem não conhece, Wayland é um protocolo de servidor de exibição que pode ser usado como alternativa ao X11 em sistemas Linux. O módulo Qt Wayland Client fornece uma maneira de um aplicativo Qt ser executado em tais sistemas, e o Qt Wayland Compositor fornece uma API poderosa para escrever servidores de exibição personalizados a partir do zero.
Qt 6.3 oferece integração aprimorada com Wayland e permite facilmente extensões de shell personalizadas
As extensões de shell personalizadas permitem criar um protocolo de extensão arbitrário e, em seguida, escrever o aplicativo compositor Qt Wayland e, em seguida, um plug-in a ser carregado pelos aplicativos Qt. Permitindo suporte ao compositor, isso permite que aplicativos Qt 6.3 não modificados façam uso de novas extensões de shell. Por sua vez, isso abre muitas novas possibilidades para alterar o comportamento e a aparência em ambientes Qt Wayland.
Muitos usuários do Qt estão criando dispositivos embarcados onde o Qt está no centro de todas as interações do usuário. Quando tal sistema é suficientemente complexo, muitas vezes será aconselhável dividi-lo em vários processos separados. Isolar partes do sistema dessa maneira pode torná-lo mais seguro e fácil de manter. Mas para fazer a conversão em um sistema multiprocesso, você precisa de uma forma de compartilhar recursos entre os clientes. Qt Wayland gerencia isso para sistemas baseados em Qt.
O Qt Wayland Compositor também pode ser usado para criar servidores para sistemas desktop, é claro. Mas o caso de uso mais comum no momento é para sistemas embarcados, e alguns dos recursos descritos neste blog são coisas que podem ser principalmente convenientes em um sistema embarcado onde todos os aplicativos são pré-definidos e confiáveis.
Para uma introdução mais detalhada, confira a documentação.
Mais detalhes sobre esta extensão do shell Wayland funcionam para o Qt 6.3 através do blog do Qt.