È stato rilasciato il server composito Niri 0.1.10, che implementa un metodo di layout a piastrellatura nello stile dell'estensione GNOME PaperWM, in cui le finestre sono raggruppate in un nastro a scorrimento infinito sullo schermo. L'apertura di una nuova finestra provoca l'espansione della barra multifunzione, ma le finestre aggiunte in precedenza non cambiano le loro dimensioni. Il progetto è basato sul protocollo Wayland, ma consente di eseguire applicazioni X11 utilizzando il server Xwayland DDX. Il codice del progetto è distribuito sotto la licenza GPLv3. I pacchetti vengono creati per Fedora, NixOS, Arch Linux e FreeBSD.
La differenza fondamentale tra Niri e PaperWM è che ogni monitor ha il proprio nastro di finestre che non si interseca con i nastri su altri monitor (in PaperWM, il lavoro separato con i monitor non può essere implementato a causa del legame con le coordinate globali della finestra in GNOME Shell). Niri supporta HiDPI e può essere eseguito su sistemi con più GPU (ad esempio, sistemi ibridi con una scheda grafica discreta e una GPU integrata). È presente un'interfaccia integrata per acquisire screenshot e registrare screencast, la cui caratteristica è la possibilità di escludere dalla registrazione singole finestre con informazioni riservate.
I desktop virtuali in Niri vengono creati dinamicamente e, in modo simile a GNOME, sono disposti verticalmente (la barra multifunzione delle finestre ruota orizzontalmente, mentre la barra multifunzione del desktop ruota verticalmente). Ogni monitor può visualizzare un set indipendente di desktop virtualiÈ possibile utilizzare i gesti del touchpad per passare da un desktop all'altro e viceversa. Quando si scollega un monitor, il layout del desktop virtuale viene memorizzato e trasferito al monitor rimanente; quando si ricollega il monitor, viene ripristinato allo stato originale. La configurazione viene eseguita tramite un file di configurazione, che consente di modificare parametri come la larghezza del frame, i rientri, le modalità di output e le dimensioni delle finestre. Le modifiche apportate al file di configurazione vengono applicate automaticamente senza riavviare lo schermo composito. server.

Nella nuova versione:
- Aggiunta una modalità interattiva di spostamento delle finestre che consente di trascinare una finestra in una nuova posizione tenendo premuto il titolo della finestra con il mouse o toccandolo sul touch screen. Per evitare che il layout cambi involontariamente quando si inizia a trascinare, è necessario superare una certa soglia di resistenza al distacco dalla posizione corrente.
- Aggiunta la possibilità di associare i comandi agli eventi di apertura o chiusura del coperchio del laptop o al passaggio del laptop alla modalità tablet. Ad esempio, dopo essere passati alla modalità tablet, è possibile attivare automaticamente l'utilizzo della tastiera su schermo. È stata inoltre aggiunta la possibilità di spostare automaticamente i desktop virtuali su un monitor esterno (se collegato) dopo aver chiuso il coperchio del laptop.
- Aggiunto il supporto per la query set_cursor_position_hint. Se la posizione del cursore è bloccata in modalità lock_pointer, la richiesta aggiunta consente all'applicazione di passare informazioni al gestore composito sulla posizione finale del cursore dopo che è stato spostato.
- Aggiunte opzioni per nascondere il cursore durante la digitazione o dopo un certo periodo di inattività.
- Sono state aggiunte nuove impostazioni del dispositivo di input, come una sezione con opzioni trackball e opzioni per lo scorrimento con la rotellina del mouse o il touchpad.
- Garantisce che le informazioni sul desktop virtuale attivo vengano salvate dopo la riconnessione del monitor.
- Aggiunta un'azione "accensione monitor" per controllare se il monitor si riattiva dalla modalità standby (per impostazione predefinita, il monitor viene attivato automaticamente dopo qualsiasi evento di input).
- Aggiunto un file per avviare niri sotto il controllo del gestore del servizio dinit.
Fonte: opennet.ru
