Introduction
Les compositors Wayland traditionnels ont une architecture monolithique qui combine le compositor et le gestionnaire de fenêtres en un seul programme. Cela a l'inconvénient de nécessiter aux gestionnaires de fenêtres Wayland de réaliser un travail important pour mettre en œuvre un compositor Wayland entier.
Contexte Technique
La nouvelle version 0.4.0 de river, un compositor Wayland non monolithique, rompt avec cette architecture traditionnelle et sépare le gestionnaire de fenêtres en un programme distinct. Il existe déjà de nombreux gestionnaires de fenêtres compatibles avec river. Le protocole stable river-window-management-v1 donne aux gestionnaires de fenêtres un contrôle total sur la position des fenêtres, les raccourcis clavier et toutes les autres politiques de gestion de fenêtres, tandis que river lui-même fournit un rendu parfait, de bonnes performances et toute la plomberie de bas niveau requise.
Analyse et Implications
L'architecture traditionnelle Wayland combine trois rôles distincts dans le processus de compositor : le serveur d'affichage, le compositor et le gestionnaire de fenêtres. Le serveur d'affichage achemine les événements d'entrée du noyau vers les fenêtres et donne les tampons du noyau à afficher. Le compositor combine tous les tampons des fenêtres visibles en un seul tampon à afficher par le noyau. Le gestionnaire de fenêtres organise les fenêtres, définit les raccourcis clavier et d'autres comportements orientés utilisateur.
Le protocole river-window-management-v1 est conçu pour donner aux gestionnaires de fenêtres un contrôle maximum sans perdre les avantages clés de Wayland. Le protocole de gestion de fenêtres ne nécessite pas de roundtrip à chaque trame ou à chaque événement d'entrée. Il n'y a pas de pénalité de latence d'entrée par rapport à l'architecture monolithique Wayland traditionnelle.
Perspective
La séparation du compositor et du gestionnaire de fenêtres dans river ouvre de nouvelles perspectives pour Wayland. Le protocole river-window-management-v1 permet aux gestionnaires de fenêtres de contrôler entièrement la position des fenêtres, les raccourcis clavier et les autres politiques de gestion de fenêtres, tandis que river fournit un rendu parfait et de bonnes performances. Il est important de surveiller les prochaines étapes de développement de river et de son protocole de gestion de fenêtres pour voir comment cela évoluera et comment cela impactera l'écosystème Wayland.