Die Veröffentlichung des Projekts labwc 0.9.0 (Lab Wayland Compositor) wurde bekannt gegeben. Es handelt sich um einen kompositorischen Server für Wayland mit Funktionen, die an den Fenstermanager Openbox erinnern (das Projekt wird als Versuch präsentiert, eine Alternative zu Openbox für Wayland zu schaffen). Zu den Besonderheiten von labwc gehören Minimalismus, kompakte Implementierung, umfangreiche Anpassungsmöglichkeiten und hohe Leistung. Animierte Effekte, Farbverläufe und Icons, mit Ausnahme der Schaltflächen für Fenster, werden grundsätzlich nicht unterstützt. Der Projektcode ist in der Programmiersprache C geschrieben und steht unter der GPLv2-Lizenz.
Als Basis wird die Bibliothek wlroots verwendet, die von den Entwicklern des Desktop-Umgebung Sway weiterentwickelt wird und grundlegende Funktionen für die Organisation des Funktionierens eines Kompositormanagers auf Basis von Wayland bereitstellt. Zusätzliche Module können angeschlossen werden, die Funktionen wie das Erstellen von Screenshots, die Anzeige von Hintergründen auf dem Desktop, die Anordnung von Panels und Menüs implementieren. Für die Ausführung von X11-Anwendungen in einer Umgebung auf Basis des Wayland-Protokolls wird die Verwendung der DDX-Komponente XWayland unterstützt. Das Design, das Hauptmenü und die Tastenkombinationen können über Konfigurationsdateien im XML-Format angepasst werden. Es gibt eine integrierte Unterstützung für Bildschirme mit hoher Pixeldichte (HiDPI).
Neben dem eingebauten Root-Menü, das über die Datei menu.xml konfiguriert werden kann, können auch externe Implementierungen von Anwendungsmenüs wie bemenu, fuzzel und wofi integriert werden. Als Panel können Waybar, sfwbar, Yambar oder LavaLauncher verwendet werden. Für die Verwaltung des Monitoranschlusses und zur Änderung ihrer Parameter wird empfohlen, wlr-randr oder kanshi zu verwenden. Die Bildschirmsperrung erfolgt über swaylock. Der Kompositionsmanager ist in der grafischen Umgebung der Raspberry Pi OS-Distribution integriert und wird optional in den Desktop-Umgebungen Xfce und LXQt unterstützt.
In der neuen Version:
- Die Unterstützung der neuen Funktionen der Bibliothek wlroots 0.19 wurde hinzugefügt, wie die Implementierung neuer Wayland-Protokolle, die Unterstützung von Multi-GPU und die Möglichkeit zur expliziten Synchronisation von Puffern mittels DRM-Synchronisationsobjekten (Direct Rendering Manager).
- Die Unterstützung von Wayland-Protokollen wurde bereitgestellt:
- ext-data-control — ermöglicht privilegierten Clients die Verwaltung der Datenverarbeitung, beispielsweise zur Implementierung von Zwischenablage-Managern.
- alpha-modifier — ermöglicht es Clients, die Transparenzstufe der Oberfläche zu ändern und Transparenzoperationen auf die Kompositionsseite auszulagern. Server.
- xdg-toplevel-icon — implementiert eine Bindung des Icons an das oberste Fenster.
- drm-syncobj — bietet Werkzeuge zur expliziten Synchronisation von Puffern mittels DRM-Synchronisationsobjekten (Direct Rendering Manager).
- ext-image-copy-capture — ermöglicht die Erfassung von Inhalten, die auf dem Bildschirm ausgegeben werden.
- Der Befehl „lab-sensible-terminal“ wurde hinzugefügt, um einen Terminal-Emulator zu starten (das Programm wird basierend auf der Umgebungsvariable $TERMINAL ausgewählt). Im Root-Menü wurde ein Punkt für den Aufruf des Terminals hinzugefügt.
- Die Unterstützung für Farbverlaufsfüllung im Titelbereich des Fensters wurde hinzugefügt. Für die Anpassung des Farbverlaufs werden folgende Optionen angeboten:
- window.*.title.bg: Solid | Gradient ( Vertikal | SplitVertikal )
- window.*.title.bg.colorTo:
- window.*.title.bg.color.splitTo:
- window.*.title.bg.colorTo.splitTo:
- Beim Start mit den Optionen „-v“ („—version“) wurden Informationen zu den unterstützten Funktionen hinzugefügt, z. B. „+xwayland -rsvg“.
- Die Übertragung von DRM-Ressourcen (Direct Rendering Manager Leases) an XWayland-Clients wurde sichergestellt.
- Die Einstellung wurde hinzugefügt, um die bevorzugte Methode zur Icon-Suche auszuwählen.
- Die Unterstützung für Farbthemen, die mit der X11-color-names-Syntax und „#rgb“ definiert wurden, wurde hinzugefügt.
- Die Unterstützung für die XWayland-Eigenschaft _NET_WM_ICON wurde implementiert und eine Regel iconPriority hinzugefügt, um dessen Unterstützung zu aktivieren.
- Die Einstellung «» ermöglicht die Verwendung von Automatischem Scrollen mit dem mittleren Mausrad in Chromium und Anwendungen auf der Electron-Plattform, ohne unbeabsichtigtes Einfügen von Daten aus der Zwischenablage.
- Die unterstützten Versionen der Wayland-Protokolle xdg_shell und wl_compositor wurden aktualisiert.
- Die Unterstützung für zusätzliche Tasten auf Mäusen wurde hinzugefügt.
- Einstellungen für libinput wurden hinzugefügt:
- «»
- «sticky»
- «none|twofinger|edge»
- Die Parameter „{left,right}-occupied“ wurden hinzugefügt, um die Navigation zwischen virtuellen Desktops mit geöffneten Fenstern zu vereinfachen.
- Die Einstellung „“ wurde hinzugefügt, um die Anzeige von Schatten für geteilte Fenster zu aktivieren.
- Die Unterstützung für die Emulation des Scrollens mit dem Mausrad wurde hinzugefügt, für die die Optionen EnableScrollWheelEmulation, DisableScrollWheelEmulation und ToggleScrollWheelEmulation angeboten werden.


Quelle: opennet.ru
