Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

De ontwikkelaars van de Nitrux-distributie, die zijn eigen desktop NX Desktop aanbiedt, hebben de creatie aangekondigd van een nieuwe gebruikersomgeving, Maui Shell, die kan worden gebruikt op desktopsystemen, mobiele apparaten en tablets, en zich automatisch aanpast aan de schermgrootte en beschikbare informatie-invoermethoden . De projectcode is geschreven in C++ en QML en wordt gedistribueerd onder de LGPL 3.0-licentie.

De omgeving ontwikkelt het "Convergentie" -concept, wat de mogelijkheid inhoudt om met dezelfde applicaties te werken, zowel op de aanraakschermen van smartphones en tablets, als op grote schermen van laptops en pc's. Op basis van de Maui Shell kan bijvoorbeeld een omhulsel voor een smartphone worden gevormd, waarmee u bij het aansluiten van een monitor, toetsenbord en muis van de smartphone een draagbaar werkstation kunt maken. Dezelfde shell kan worden gebruikt voor desktopsystemen, smartphones en tablets, zonder dat er aparte versies hoeven te worden gemaakt voor apparaten met verschillende vormfactoren.

Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

De shell gebruikt componenten voor het bouwen van grafische interfaces MauiKit en het Kirigami-framework, die zijn ontwikkeld door de KDE-gemeenschap. Kirigami is een superset van Qt Quick Controls 2, en MauiKit biedt kant-en-klare interface-elementsjablonen waarmee u snel toepassingen kunt maken die zich automatisch aanpassen aan de schermgrootte en beschikbare invoermethoden.

De Maui Shell-gebruikersomgeving bestaat uit twee componenten:

  • Een Cask-shell die een container biedt die de volledige inhoud van het scherm omsluit. De shell bevat ook basissjablonen voor elementen zoals de bovenste balk, pop-updialogen, schermkaarten, meldingsgebieden, dockpaneel, snelkoppelingen, interface voor het oproepen van programma's, enz.
  • Zpace composietmanager, verantwoordelijk voor het weergeven en plaatsen van vensters in de Cask-container, het verwerken van virtuele desktops. Het Wayland-protocol wordt gebruikt als het hoofdprotocol, waarmee wordt gewerkt met behulp van de Qt Wayland Compositor API. De positionering en verwerking van vensters is afhankelijk van de vormfactor van het apparaat.
    Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

De bovenste balk bevat het systeemvak, de kalender en schakelaars voor snelle toegang tot verschillende algemene functies, zoals toegang tot netwerkinstellingen, het wijzigen van het volume, het aanpassen van de schermhelderheid, afspeelknoppen en sessiebeheer. Onderaan het scherm bevindt zich een dockpaneel met pictogrammen van vastgezette applicaties, informatie over actieve programma's en een knop om door geïnstalleerde applicaties te navigeren (launcher). Beschikbare programma's zijn onderverdeeld in categorieën of gegroepeerd, afhankelijk van het opgegeven filter.

Bij het werken op gewone monitoren werkt de shell in desktopmodus, met een paneel bovenaan, dat niet wordt geblokkeerd door vensters die op volledig scherm worden geopend, en paneelelementen worden automatisch gesloten als u daarbuiten klikt. De applicatieselectie-interface wordt in het midden van het scherm geopend. De bedieningselementen zijn ontworpen voor gebruik met een muis. Het is mogelijk om een ​​willekeurig aantal vensters te openen, die van elke grootte kunnen zijn, elkaar kunnen overlappen, naar een ander bureaublad kunnen worden overgebracht en kunnen worden uitgebreid naar volledig scherm. Windows heeft randen en een titelbalk die worden weergegeven met de component WindowControls. Raamdecoratie gebeurt aan de serverzijde.

Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

Als er een touchscreen is, werkt de shell in tabletmodus met een verticale lay-out van elementen. Open vensters beslaan het gehele scherm en worden zonder decoratie-elementen weergegeven. Er kunnen maximaal twee vensters worden geopend op één virtueel bureaublad, naast elkaar of gestapeld, vergelijkbaar met tegelvenstermanagers. Het is mogelijk om de grootte van vensters te wijzigen met behulp van het knijpgebaar op het scherm of om vensters te verplaatsen door ze met drie vingers te verschuiven; wanneer u een venster buiten de rand van het scherm verplaatst, wordt het overgebracht naar een ander virtueel bureaublad. De applicatieselectie-interface neemt alle beschikbare schermruimte in beslag.

Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

Op telefoons worden de paneelelementen en de lijst met applicaties uitgevouwen naar volledig scherm. Een schuifbeweging aan de linkerkant van het bovenpaneel opent een blok met een lijst met meldingen en een kalender, en aan de rechterkant een blok met snelle instellingen. Als de inhoud van de lijst met programma's, meldingen of instellingen niet op één scherm past, wordt er gebruik gemaakt van scrollen. Voor elke virtuele desktop mag slechts één venster worden weergegeven, dat alle beschikbare ruimte in beslag neemt en het onderste paneel overlapt. Met behulp van schuifbewegingen op het scherm kunt u het onderste paneel openen of schakelen tussen geopende applicaties.

Nieuwe open gebruikersomgeving Maui Shell geïntroduceerd

Het project wordt actief ontwikkeld. Functies die nog niet zijn geïmplementeerd, zijn onder meer ondersteuning voor configuraties met meerdere monitoren, een sessiemanager, een configurator en het gebruik van XWayland om X11-applicaties uit te voeren in een Wayland-gebaseerde sessie. De functionaliteit waar ontwikkelaars zich momenteel op richten omvat ondersteuning voor de XDG-shell-extensie, panelen, virtuele desktops, het Drag & Drop-mechanisme, audio-uitvoer via Pulseaudio, interactie met Bluetooth-apparaten via Bluedevil, een netwerkbeheerindicator en besturing van mediaspelers via MPRI. .

De eerste experimentele versie is als optie opgenomen in de decemberupdate van de Nitrux 1.8-distributie. Er zijn twee opties beschikbaar voor het uitvoeren van de Maui Shell: met een eigen samengestelde Zpace-server die Wayland gebruikt, en het uitvoeren van een afzonderlijke Cask-shell binnen een X-servergebaseerde sessie. De eerste alfa-release staat gepland voor maart, de bèta-release staat gepland voor juni en de eerste stabiele release staat gepland voor september 2022.

Bron: opennet.ru

Voeg een reactie