Ho visto il rilascio del progetto labwc 0.5, che sviluppa un server composito per Wayland con funzionalità simili a un gestore di finestre come Openbox (il progetto è presentato come un tentativo di creare un'alternativa a Openbox per Wayland). Tra le caratteristiche di labwc ci sono il minimalismo, un'implementazione compatta, ampie possibilità di personalizzazione e alte prestazioni. Il codice del progetto è scritto in C e distribuito con licenza GPLv2.
Come base viene utilizzata la libreria wlroots, sviluppata dagli sviluppatori dell'ambiente desktop Sway, e che fornisce le funzioni di base per organizzare il lavoro del gestore compositore basato su Wayland. Tra i protocolli Wayland estesi sono supportati wlr-output-management per la configurazione dei dispositivi di output, layer-shell per organizzare il lavoro della shell del desktop e foreign-toplevel per connettere pannelli e switch di finestre personalizzati.
È possibile collegare plugin con funzioni come la creazione di screenshot, la visualizzazione degli sfondi sul desktop, la posizionamento della barra e del menu. Effetti animati, gradienti e icone (ad eccezione dei pulsanti per le finestre) non sono supportati per principio. Per eseguire applicazioni X11 in un ambiente basato sul protocollo Wayland, è supportato l'uso del componente DDX XWayland. Il tema, il menu principale e le scorciatoie da tastiera sono configurabili tramite file di configurazione in formato xml.
Oltre al menu principale integrato, configurabile tramite menu.xml, è possibile collegare implementazioni di menu applicazioni di terze parti, come bemenu, fuzzel e wofi. Come barra degli strumenti è possibile utilizzare Waybar, Uambar o LavaLauncher. Per gestire la connessione dei monitor e modificare le loro impostazioni si consiglia di utilizzare wlr-randr o kanshi. Il blocco dello schermo avviene tramite swaylock.
Nel nuovo rilascio:
- È garantito il supporto per schermi ad alta densità di pixel (HiDPI).
- È assicurata la riorganizzazione degli elementi in caso di disconnessione di dispositivi di output aggiuntivi.
- Sono state modificate le impostazioni relative all'elaborazione degli eventi di spostamento degli elementi con il mouse.
- È stata aggiunta la possibilità di ridurre la finestra dopo il suo spostamento (unmaximize-on-move).
- È stato aggiunto il supporto per la barra delle applicazioni sfwbar (Sway Floating Window Bar).
- È stato aggiunto il supporto per i menu delle applicazioni dei client.
- È stata fornita la possibilità di eseguire applicazioni in modalità schermo intero.
- È stata aggiunta l'opzione cycleViewPreview per visualizzare il contenuto durante il passaggio tra le finestre, utilizzando l'interfaccia Alt+Tab.
- È stata aggiunta la possibilità di associare un'azione quando il cursore del mouse si sposta oltre il bordo dello schermo.
- È stato aggiunto il supporto per le variabili ambientali WLR_{WL,X11}_OUTPUTS, supportate in wlroots.
- È stato aggiunto il supporto per i gesti di controllo (spostamento e zoom tramite pizzico).



Fonte: opennet.ru
