Nach 14 Monaten Entwicklung wurde die Version 1.9 des Composite Managers Sway veröffentlicht, der auf dem Wayland-Protokoll basiert und vollstÀndig mit dem tiling Window Manager i3 sowie dem i3bar-Panel kompatibel ist. Der Projektcode ist in C geschrieben und wird unter der MIT-Lizenz veröffentlicht. Das Projekt zielt darauf ab, auf Linux und FreeBSD eingesetzt zu werden.
Die KompatibilitÀt mit i3 wird auf der Ebene der Befehle, Konfigurationsdateien und IPC gewÀhrleistet, wodurch Sway als transparente Alternative zu i3 fungiert, die Wayland anstelle von X11 verwendet. Sway ermöglicht es, Fenster logisch auf dem Bildschirm anzuordnen, anstatt sie rÀumlich zu platzieren. Fenster werden in einem Gitter angeordnet, das den Bildschirmraum optimal nutzt und eine schnelle Manipulation der Fenster nur mit der Tastatur ermöglicht.
FĂŒr die Einrichtung einer vollwertigen Benutzerumgebung werden begleitende Komponenten angeboten: swayidle (Hintergrundprozess zur Implementierung des KDE idle-Protokolls), swaylock (Bildschirmsperre), mako (Benachrichtigungsmanager), grim (Screenshot-Erstellung), slurp (Bereichsauswahl auf dem Bildschirm), wf-recorder (Videoaufnahme), waybar (Anwendungsleiste), virtboard (Bildschirmtastatur), wl-clipboard (Zwischenablage-Verwaltung), wallutils (Hintergrundbildverwaltung).
Sway entwickelt sich als modulares Projekt, das auf der Bibliothek wlroots basiert, die alle grundlegenden Primitiven fĂŒr die Organisation der Arbeit des Compositing-Managers bereitstellt. Wlroots umfasst Backends zur Abstraktion des Zugriffs auf den Bildschirm, EingabegerĂ€te, Rendering ohne direkten Zugriff auf OpenGL, Interaktion mit KMS/DRM, libinput, Wayland und X11 (eine Schicht zur AusfĂŒhrung von X11-Anwendungen auf Basis von Xwayland wird bereitgestellt). Neben Sway wird die Bibliothek wlroots auch in anderen Projekten wie Librem5 und Cage aktiv genutzt. Neben C/C++ wurden Bindings fĂŒr Scheme, Common Lisp, Go, Haskell, OCaml, Python und Rust entwickelt.
In der neuen Version:
- Die neuen Funktionen der Bibliothek wlroots 0.17 sind aktiviert, darunter die UnterstĂŒtzung der Wayland-Protokolle content-type-v1 (Verarbeitung von Informationen zum angezeigten Inhalt), xwayland-shell-v1 (VerknĂŒpfung eines X11-Fensters mit einer Wayland-OberflĂ€che), wp-fractional-scale-v1 (fractionale Skalierung), security-context-v1 (Sandbox-Isolierung) und cursor-shape-v1 (Anpassung des Aussehens des Mauszeigers).
- Die UnterstĂŒtzung des Protokolls âxdg-activation-v1â wurde verbessert, welches den Fokus zwischen verschiedenen Wayland-OberflĂ€chen der ersten Ebene ĂŒbertrĂ€gt (zum Beispiel kann eine Anwendung mit xdg-activation den Fokus auf eine andere verschieben). In der neuen Version wurde die UnterstĂŒtzung fĂŒr das Fokussieren unter BerĂŒcksichtigung virtuellen ArbeitsflĂ€chen und von Mehrmonitor-Konfigurationen hinzugefĂŒgt.
- Der Code fĂŒr das Rendern von Inhalten wurde auf die neue Rendering-API der Bibliothek wlroots umgestellt, was zu einer Leistungssteigerung fĂŒhrte.
- In die Konfigurationsdatei wurde eine Einstellung zum Deaktivieren des primĂ€ren Zwischenspeichers hinzugefĂŒgt.
- Neue Steuerbefehle fĂŒr EingabegerĂ€te wurden hinzugefĂŒgt, um die Parameter RotationAngle und ScrollButtonLock in libinput fĂŒr Probleme mit Touchpads und MĂ€usen zu lösen.
- Die UnterstĂŒtzung fĂŒr die Verwendung von Tablet-Tasten zur Ănderung der GröĂe von schwebenden Fenstern wurde hinzugefĂŒgt.
- In IPC wurde die UnterstĂŒtzung fĂŒr das Ausgabeereignis hinzugefĂŒgt.
- Das Projekt wmenu wird als Standard-AnwendungsmenĂŒ verwendet.
- Die UnterstĂŒtzung des KDE-spezifischen Protokolls idle wurde eingestellt, stattdessen kommt das Standard-Wayland-Protokoll idle-notify-v1 zum Einsatz.


Quelle: opennet.ru
