Gli sviluppatori di System76 tornano ad aggiornarci sullo sviluppo di COSMIC DE, il nuovo ambiente desktop scritto in Rust che vedremo in futuro su Pop!_OS e su qualsiasi altra distribuzione vorrà adottarlo.

Ecco quali sono le novità dal fronte sviluppo.


COSMIC Appearance

Uno degli obiettivi degli sviluppatori di COSMIC è stato quello di fornire un modo semplice e significativo per personalizzare l'aspetto del desktop. Per integrare la personalizzazione alla base di COSMIC DE si sono assicurati che il sistema di progettazione fosse tematizzabile.


Saremo in grado di personalizzare l'aspetto del nostro sistema direttamente nelle Impostazioni di COSMIC. Oltre a passare dalla modalità Dark a Light e a scegliere un colore d'accento, è possibile modificare lo sfondo dell'applicazione, la tinta della tavolozza del testo dell'interfaccia e la tinta della tavolozza neutra. Potremo anche scegliere uno dei tre stili per i raggi degli angoli utilizzati nell'interfaccia e impostare una densità dell'interfaccia.



Per garantire che queste opzioni funzionino senza problemi, il sistema di progettazione è strutturato in un certo modo. Nulla dei componenti del sistema di progettazione è destinato a essere codificato in modo rigido. Il sistema si basa quindi sull'uso di variabili non solo per i colori, ma anche per la spaziatura, le dimensioni delle icone e i raggi degli angoli.



Una delle sfide nella personalizzazione del colore riguarda il mantenimento del contrasto cromatico necessario, pur dando sufficiente libertà di creazione. Per risolvere questo problema, i colori del tema vengono derivati ​​automaticamente dai pochi colori di base che possiamo personalizzare.

Ad esempio, quando si seleziona un colore di sfondo specifico per l'applicazione, il sistema lo utilizza per ricavare i colori delle altre superfici e del testo posizionato su tali superfici. Quando si sceglie un colore di tinta del testo, i colori del testo si adattano automaticamente a questa tinta. Il colore di tinta neutro conferisce una sfumatura sottile a vari widget, tra cui lo sfondo e il testo dell'input di ricerca e delle schede.




COSMIC Application API

È stata aggiunta un'API applicativa alla libreria di widget libcosmic per fornire un framework per lo sviluppo di applicazioni e applet in COSMIC DE. L'API automatizza l'integrazione con il supporto dei temi COSMIC, con i protocolli Wayland, con il back-end di configurazione di COSMIC e con gli elementi comuni delle applicazioni, come le barre di intestazione e la navigazione. Per gli sviluppatori di applicazioni, questo significa un comodo sviluppo senza doversi preoccupare di gestire le integrazioni di basso livello con il desktop e il window manager. Per gli sviluppatori di COSMIC questo garantisce la coerenza tra le applicazioni e le applet COSMIC.


Tiling with mouse

Il tiling con il mouse è stato progettato e implementato insieme al tiling con la tastiera, come due parti della stessa funzionalità. Mentre una finestra viene affiancata con il mouse, gli indicatori mostrano quali finestre sono raggruppate insieme, mentre uno sfondo trasparente indica come quella finestra sarà disposta nella sua nuova posizione. Oltre a queste zone, è possibile posizionare una finestra tra due finestre per creare una nuova colonna nella griglia di tiling.


Notifications Center

L'applet delle notifiche è stato integrato in COSMIC DE. A differenza di Pop!_OS 22.04 LTS, le notifiche esistono in un'applet propria, separata dal calendario. Inoltre, più notifiche provenienti dalla stessa applicazione si impileranno nel centro notifiche, riducendo il disordine. Ecco un esempio di come funziona.



User Permissions

Le applicazioni richiedono l'autorizzazione dell'utente per eseguire determinate funzioni, come ad esempio l'uso del microfono per una chat virtuale in Jitsi o Zoom. Mantenere le applicazioni isolate da queste funzioni protegge la privacy dell'utente, richiedendo il nostro consenso per accedere a processi che altrimenti potrebbero risultare invasivi o lasciare il sistema vulnerabile. COSMIC DE utilizza ora un agente Polkit, che facilita la comunicazione tra le applicazioni e il sistema e richiede la password quando un'attività richiede un permesso speciale per procedere.



Correzioni in Xwayland per popup e menu a discesa

Xwayland è un livello di compatibilità tra le applicazioni che utilizzano il compositore X e il compositore/server di visualizzazione Wayland utilizzato in COSMIC DE. Il compositore collega i clic del mouse a ciò che viene visualizzato sullo schermo in modo che avvenga l'azione corretta, rendendo la compatibilità tra i due della massima importanza. I menu dell'applicazione X a volte non si aprivano quando si faceva clic e si verificavano ulteriori problemi dopo essere stati spostati su un altro display. Gli sviluppatori hanno implementato una serie di correzioni per risolvere questi bug.