The release of project labwc 0.7 (Lab Wayland Compositor) is available, developing a compositor server for Wayland with features reminiscent of the Openbox window manager (the project is presented as an attempt to create an alternative to Openbox for Wayland). Key features of labwc include minimalism, a compact implementation, extensive customization options, and high performance. The project's code is written in C and distributed under the GPLv2 license.
It uses the wlroots library, developed by the creators of the Sway desktop environment, which provides the basic functions for organizing the work of a compositing manager based on Wayland. Among the extended Wayland protocols supported are wlr-output-management for configuring output devices, layer-shell for desktop shell functionality, and foreign-toplevel for connecting custom panels and window switches.
Extensions can be connected to implement features such as taking screenshots, displaying desktop wallpapers, and placing panels and menus. Animated effects, gradients, and icons (except for window buttons) are not supported by design. To run X11 applications in a Wayland-based environment, the DDX component XWayland is supported. The theme, basic menu, and hotkeys are configurable through XML configuration files. There is built-in support for high pixel density (HiDPI) displays.
In addition to the built-in root menu, configurable via menu.xml, external implementations of application menus such as bemenu, fuzzel, and wofi can be connected. For a panel, you can use Waybar, sfwbar, Yambar, or LavaLauncher. To manage monitor connections and change their settings, wlr-randr or kanshi is suggested. Screen locking is performed using swaylock.

Key changes in the new release:
- The transition to the new branch of the wlroots library 0.17 has been made.
- Support for the Wayland protocol cursor-shape-v1 has been added, which is used to configure the appearance of the cursor by transmitting a series of cursor images.
- Support for the Wayland protocol fractional-scale has been added, which allows the compositor to transmit non-integer scaling values for surfaces, enabling the client to determine a more accurate buffer size for wp_viewport objects compared to transmitting rounded scale information.
- Added support for icons in window titles.
- The window switcher interface has been updated to allow reverse scrolling by pressing the left or up arrow key.
- The configuration osd.workspace-switcher.boxes.{width,height} has been added to define the size of thumbnails in the virtual desktop switching interface.
- New actions VirtualOutputAdd and VirtualOutputRemove have been added for adding and removing virtual output devices.
- Added ResizeTo action for resizing.
- The action ToggleOmnipresent and the option 'Always on Visible Workspace' have been added to keep content always on the active desktop.
- For applications using XWayland, the _NET_WORKAREA property has been set to indicate the size of the free area on the screen not occupied by panels (e.g., used in Qt when calculating the size of popup menus).
Source: opennet.ru
