labwc 0.7.0 The main effort in this release has gone into porting labwc to wlroots 0.17 and tidying up regressions. Nonetheless, it contains a significant number of additions and fixes as described below. Should bug fixes be required against `0.6.6` (built with wlroots `0.16`), a `0.6` branch will be created. Added - Support titlebar hover icons. Written-by: @spl237 - Add theme options osd.workspace-switcher.boxes.{width,height} Written-by: @kyak - Add actions `VirtualOutputAdd` and `VirtualOutputRemove` to control virtual outputs. Written-by: @kyak (#1287) - Teach MoveToEdge to move windows to adjacent outputs. Written-by: @ahesford - Implement `<font place="InactiveWindow">`. Written-by: @ludg1e (#1292) - Implement cursor-shape-v1 protocol to allow Wayland clients to request a buffer for a cursor shape from a compositor. Written-by: @heroin-moose - Implement fractional-scale-v1 protocol to allow Wayland clients to properly scale on outputs with fractional scale factor. Written-by: @heroin-moose - Add ResizeTo action (#1261) - Allow going backwards in window-switcher OSD by using arrow-up or arrow-left. Written-by: @jp7677 - Add `ToggleOmnipresent` action and add an "Always on Visible Workspace" entry for it in the client-menu under the Workspaces submenu. Written-by: @bnason - Account for space taken up by XWayland clients with `_NET_WM_STRUT_PARTIAL` property in the `usable_area` calculation. This increases inter-operability with X11 desktop componenets. - Set XWayland's `_NET_WORKAREA` property based on usable area. XWayland clients use the `_NET_WORKAREA` root window property to determine how much of the screen is not covered by panels/docks. The property is used for example by Qt to determine areas of the screen that popup menus should not overlap. Fixed - Fix xwayland.c null pointer dereference causing crash with CLions. (#1352) - Fix issue with XWayland surfaces completely offscreen not generating commit events and therefore preventing them from moving onscreen. - Do not de-active windows when layer-shell client takes keyboard focus, to fix sfwbar minimize action. (#1342) - Move layer-shell popups from the background layer to the top layer to render them above normal windows. Previously this was only done for the bottom layer. In support of Raspberry Pi's `pcmanfm --desktop`. (#1293) - Calculate `usable_area` before positioning clients to ensure it is correct before non exclusive-zone layer-shell clients are positioned or resized. (#1285) - Prevent overriding XWayland maximized/fullscreen/tiled geometry to fix an issue where some XWayland views (example: xfce4-terminal) do not end up with exactly the correct geometry when tiled. Changed - Treat XWayland panel windows as if fixedPosition rule is set - Use the GTK3 notebook header color as the default active title color (small change from `#dddad6` to `#e1dedb`). Written-by: @dimkr