KwinFT, un nouveau gestionnaire de fenêtres basé sur KWin pour Wayland

Romain Gilg, impliqué dans le développement de KDE, Wayland, Xwayland et X Server, a présenté le projet KWinFT (KWin Fast Track), qui développe un gestionnaire de fenêtres composite flexible et facile à utiliser pour Wayland et X11, basé sur la base de code KWin.

Outre le gestionnaire de fenêtres, le projet développe également une bibliothèque wrapland avec l'implémentation de liaisons sur libwayland pour Qt / C ++, qui poursuit le développement de KWayland, mais est libérée de la liaison à Qt.

À propos de KwinFT

Le but du projet est de retravailler KWin et KWayland en utilisant des technologies modernes et des pratiques de développement qui accélèrent le développement de projets, refactoriser le code, ajouter des optimisations et simplifier les innovations d'intégration fondamentaux, difficiles à intégrer dans KWin dans sa forme actuelle. KWinFT et Wrapland peuvent être utilisés pour remplacer de manière transparente KWin et KWayland, mais ne sont pas limités au cadre imposé à KWin par de nombreux produits, le maintien d'une compatibilité totale avec laquelle est une priorité qui empêche l'avancement des innovations.

Chez KWinFT, ilLes développeurs sont mains libres et peuvent expérimenter de nouvelles fonctionnalités, cherchant à maintenir la stabilité grâce à l'utilisation de techniques de développement plus modernes.

Par exemple, pour vérifier le code KWinFT, un système d'intégration continue est impliqué, qui comprend la vérification à l'aide de différents linter, la génération d'assemblage automatique et des tests avancés. Concernant le développement des fonctionnalités, L'objectif principal de KWinFT sera de fournir un support complet et de haute qualité pour le protocole Wayland, y compris la refonte des caractéristiques architecturales de KWin qui compliquent l'intégration avec Wayland.

Parmi les innovations expérimentales déjà ajouté à KWinFT, les suivants se démarquent:

  • Le processus de composition a été repensé, qui a considérablement amélioré le rendu du contenu sous le contrôle de X11 et Wayland. De plus, un minuteur a été ajouté pour minimiser les délais entre la création d'image et l'affichage.
  • Une extension du protocole Wayland "viewporter" a été implémentée, qui permet au client d'exécuter des actions pour mettre à l'échelle et ajuster les bords de la surface côté serveur. En combinaison avec la prochaine version majeure de XWayland, l'extension vous permettra d'émuler un changement de résolution d'écran pour les jeux plus anciens.
  • Prise en charge complète de la rotation et de la mise en miroir sortie pour les sessions basées sur Wayland.
  • Wrapland fournit une interface de programmation de style Qt qui permet d'accéder aux fonctions de libwayland d'une manière pratique pour une utilisation dans des projets C ++. Initialement, ils prévoyaient de développer Wrapland comme un fork de KWayland, mais en raison de l'état insatisfaisant du code KWayland, il est maintenant considéré comme un projet de traitement KWayland complet. La différence la plus importante entre Wrapland et KWayland est l'élimination de la liaison à Qt et la possibilité de l'utiliser séparément sans installer Qt. À l'avenir, Wrapland peut être utilisé comme une bibliothèque universelle avec une API C ++, éliminant ainsi le besoin pour les développeurs d'utiliser l'API C libwayland.
  • Les packages prêts à l'emploi sont conçus pour les utilisateurs de Manjaro Linux. Pour activer KWinFT, installez simplement kwinft à partir du référentiel, et pour revenir à KWin normal, installez le paquet kwin. L'utilisation de Wrapland n'est pas limitée à KDE, par exemple, une implémentation client a été préparée pour le protocole de contrôle de sortie utilisé dans wlroots, qui permet d'utiliser KScreen pour configurer la sortie sur des serveurs composites basés sur wlroots (Sway, Wayfire).

En attendant les mises à jour du projet KWin à faible latence continuent d'être publiées, qui forme le comité de rédaction de l'administrateur composite KWin avec des correctifs pour augmenter la réactivité de l'interface et résoudre certains problèmes liés à la vitesse de réponse aux actions de l'utilisateur, comme le freinage d'entrée.

Enfin, pour ceux qui souhaitent en savoir plus ou revoir le code KwinFT, ils peuvent contacter vers le lien suivant, où vous trouverez également des informations sur son installation.

Le code est distribué sous les licences GPLv2 et LGPLv2.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.