Les développeurs du projet Nitrux ont présenté la première version alpha de l'environnement utilisateur Maui Shell, en cours de développement selon le concept de « Convergence », qui permet d'utiliser les mêmes applications aussi bien sur les écrans tactiles des smartphones et tablettes que sur les grands écrans des ordinateurs portables et de bureau. Maui Shell s'adapte automatiquement à la taille de l'écran et aux méthodes de saisie disponibles, et peut être utilisé non seulement sur des systèmes de bureau, mais aussi sur des smartphones et des tablettes. Le code du projet est écrit en C++ et QML, et est distribué sous la licence LGPL 3.0.
Lorsqu'il est utilisé sur des moniteurs classiques, l'interface fonctionne en mode bureau, avec une barre fixe en haut, la possibilité d'ouvrir un nombre arbitraire de fenêtres et un contrôle à l'aide de la souris. En présence d'un écran tactile, l'interface fonctionne en mode tablette avec une disposition verticale des éléments et l'ouverture de fenêtres en plein écran ou côte à côte, similaire aux gestionnaires de fenêtres en mosaïque. Sur les smartphones, les éléments de la barre et des applications s'étendent sur tout l'écran, comme sur les plateformes mobiles traditionnelles.

La même interface peut être utilisée pour des systèmes de bureau, des smartphones et des tablettes, sans besoin de créer des versions séparées pour des appareils avec des formats différents. Par exemple, en utilisant Maui Shell sur un smartphone ou une tablette, l'interface permet de transformer l'appareil mobile en une station de travail portable, offrant une interface de bureau complète lors de la connexion à un moniteur, un clavier et une souris.

Maui Shell utilise des composants pour la création d'interfaces graphiques MauiKit et le framework Kirigami, qui sont développés par la communauté KDE. Kirigami est une surcouche des éléments Qt Quick Controls 2, tandis que MauiKit propose des modèles prêts à l'emploi pour les éléments d'interface, permettant de créer très rapidement des applications qui s'adaptent automatiquement à la taille de l'écran et aux méthodes de saisie disponibles. Le projet utilise également d'autres composants tels que BlueDevil (gestion du Bluetooth), Plasma-nm (gestion des connexions réseau), KIO, PowerDevil (gestion de l'alimentation), KSolid et PulseAudio.
La sortie d'information est assurée par son propre gestionnaire de composition Zpace, qui est responsable de l'affichage et du placement des fenêtres ainsi que du traitement. des bureaux virtuelsLe protocole principal utilisé est Wayland, avec lequel on travaille grâce à l'API Qt Wayland Compositor. Au-dessus de Zpace, on trouve l'interface Cask, qui crée un conteneur englobant tout le contenu de l'écran et fournit des implémentations de base pour des éléments tels qu'une barre supérieure, des dialogues contextuels, des cartes d'écran, des zones de notifications, un dock, des raccourcis, l'interface de lancement des programmes, etc. Au-delà de l'exécution de Maui Shell sur son compositeur, de serveurs il est également possible de lancer séparément l'interface Cask dans une session basée sur le serveur X.
La première version alpha a marqué l'implémentation des fonctionnalités de base de l'interface Cask et le développement d'éléments spécifiques aux dispositifs avec différents facteurs de forme. La prise en charge de l'audio, du Bluetooth, d'un thème sombre, des widgets pour le contrôle de réseau, de lecture et de luminosité a également été ajoutée. Un agent basé sur PolKit a été introduit pour exécuter des actions privilégiées. Il est désormais possible de changer les fonds d'écran et d'ajuster dynamiquement les schémas de couleur. Un programme pour lancer la session startcask-wayland et les services nécessaires à son fonctionnement a été ajouté. Le panneau des programmes affiche en première page les applications les plus utilisées, les catégories de programmes, les téléchargements récents et des raccourcis pour un accès rapide.

En juin, un lancement bêta est prévu, au cours duquel les fonctionnalités de Cask seront améliorées, un gestionnaire de sessions sera proposé, ainsi qu'un bloqueur d'écran, un système de gestion de l'alimentation et la possibilité de contrôle via des combinaisons de touches. La première version stable est prévue pour septembre 2022.
Source : opennet.ru
