From fb6335e23df98177ba6bf196f60585e7779c73aa Mon Sep 17 00:00:00 2001 From: Consolatis <35009135+Consolatis@users.noreply.github.com> Date: Tue, 17 May 2022 19:29:21 +0200 Subject: [PATCH] Prepare for release of 0.5.2 --- NEWS.md | 235 ++++++++++++++++++++++++++++++++++++++++++++-------- meson.build | 2 +- 2 files changed, 200 insertions(+), 37 deletions(-) diff --git a/NEWS.md b/NEWS.md index e070e8d9..cef7038d 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,69 +1,232 @@ -# NEWS +# Introduction This file contains significant user-visible changes for each version. -For full changelog, use `git log` +For full changelog, use `git log`. -[We are currently in the process of update the code-base to use the wlroots -scene-graph API](https://github.com/johanmalm/labwc/tree/scene) +The format is based on [Keep a Changelog] -Tag 0.5.0 is the last minor release before the move to scene-graph. An -associated v0.5 branch exists for patches and patch-tags if needed. It's -not envisaged that new features will be added on that branch though. +On the `master` branch we have moved across to the wlroots scene-graph +API and as a result there is likey to be a period of instability and +regression. A `v0.5` branch has been created as a stable pre-scene-graph +branch, but it is not envisaged that new major features will be added on +that branch. -## 0.5.0 (2022-02-18) +# Summary of Releases -This release contains the following two breaking changes: +| Date | Release notes | wlroots version | lines-of-code | +|------------|---------------|-----------------|---------------| +| 2022-05-17 | [0.5.2] | 0.15.1 | 8829 | +| 2022-04-08 | [0.5.1] | 0.15.1 | 8829 | +| 2022-02-18 | [0.5.0] | 0.15.1 | 8766 | +| 2021-12-31 | [0.4.0] | 0.15.0 | 8159 | +| 2021-06-28 | [0.3.0] | 0.14.0 | 5051 | +| 2021-04-15 | [0.2.0] | 0.13.0 | 5011 | +| 2021-03-05 | [0.1.0] | 0.12.0 | 4627 | -1. Disabling outputs now causes views to be re-arranged, so in the - context of idle system power management (for example when using - swaylock), it is no longer suitable to call wlr-randr {--off,--on} - to enable/disable outputs. +## 0.6.0 - unreleased -2. The "Drag" mouse-event and the unmaximize-on-move feature require - slightly different `` settings to feel natural, so suggest - updating any local `rc.xml` settings in accordance with - `docs/rc.xml.all` +This release contains significant refactoring to use the wlroots +scene-graph API, particularly src/output.c, server-side-decoration +and the layer-shell implementation. Many thanks to @Consolatis for some +heavy lifting with this. Native language support has been added by +@01micko. + +### Added + +- Presentation protocol + +## [0.5.2] - 2022-05-17 + +This is a minor bugfix release mostly to ease packaging. + +### Fixed + +- Properly use system provided wlroots. Written-by: @eli-schwartz + +## [0.5.1] - 2022-04-08 + +### Added + +- Honour size increments from WM_SIZE_HINTS, for example to allow + xwayland terminal emulators to be resized to a width/height evenly + divisible by the cell size. Written-by: @jlindgren90 +- Implement cursor input for overlay popups. Written-by: @Consolatis + +### Fixed + +- Do not raise xwayland windows when deactivating (issue #270). + Written-by: @Consolatis +- Restore drag mouse-bindings and proper double-click (issues #258 and + #259). Written-by: @Consolatis +- Implement cursor input for unmanaged xwayland surfaces outside their + parent view. Without this menus extending outside the main application + window do not receive mouse input. Written-by: @jlindgren90 +- Allow dragging scrollbar or selecting text even when moving cursor + outside of the window (issue #241). Written-by: @Consolatis +- Fix positioning of xwayland views with multiple queued configure + events. Written-by: @Consolatis +- Force a pointer enter event on the surface below the cursor when + cycling views (issue #162). Written-by: @Consolatis +- Fix qt application crash on touchpad scroll (issue #225). + Written-by: @Consolatis + +## [0.5.0] - 2022-02-18 As usual, this release contains a bunch of fixes and improvements, of which the most notable feature-type changes are listed below. A big thank you to @ARDiDo, @Consolatis and @jlindgren90 for much of the hard work. +### Added + - Render overlay layer popups to support sfwbar (issue #239) - - Support HiDPI on-screen-display images for outputs with different scales - -- Reload environment variables on SIGHUPi (issue #227) - +- Reload environment variables on SIGHUP (issue #227) - Add client menu - - Allow applications to start in fullscreen - - Add config option `` to preview the contents of each view when cycling through them (for example using alt-tab). - - Allow mouse movements to trigger SnapToEdge. When dragging a view, move the cursor outside an output to snap in that direction. - - Unmaximize on Move - - Support wlroots environment variable `WLR_{WL,X11}_OUTPUTS` for running in running nested in X11 or a wlroots compositor. - - Support pointer gestures (pinch/swipe) - - Adjust views to account for output layout changes -## Previous releases +### Changed -| Date | Release notes | wlroots version | -|------------|---------------|-----------------| -| 2022-02-18 | [0.5.0] | 0.15.1 | -| 2021-12-31 | [0.4.0] | 0.15.0 | -| 2021-06-28 | [0.3.0] | 0.14.0 | -| 2021-04-15 | [0.2.0] | 0.13.0 | -| 2021-03-05 | [0.1.0] | 0.12.0 | +This release contains the following two breaking changes: +- Disabling outputs now causes views to be re-arranged, so in the + context of idle system power management (for example when using + swaylock), it is no longer suitable to call wlr-randr {--off,--on} + to enable/disable outputs. +- The "Drag" mouse-event and the unmaximize-on-move feature require + slightly different `` settings to feel natural, so suggest + updating any local `rc.xml` settings in accordance with + `docs/rc.xml.all` + +## [0.4.0] - 2021-12-31 + +Compile with wlroots 0.15.0 + +This release contains lots of internal changes, fixes and new features. +A big thank you goes out to @ARDiDo, @bi4k8, @Joshua-Ashton, +@jlindgren90, @Consolatis, @telent and @apbryan. The most notable +feature-type changes are listed below. + +### Added + +- Add support for the following wayland protocols: + - `pointer_constraints` and `relative_pointer` - mostly for gaming. + Written-by: @Joshua-Ashton + - `viewporter` - needed for some games to fake modesets. + Written-by: @Joshua-Ashton + - `wlr_input_inhibit`. This enables swaylock to be run. + Written-by: @telent + - `wlr_foreign_toplevel`. This enables controlling windows from clients + such as waybar. + - `idle` and `idle_inhibit` (Written-by: @ARDiDo) +- Support fullscreen mode. +- Support drag-and-drop. Written-by: @ARDiDo +- Add the following config options: + - Load default keybinds on `` + - `` and `` + - Specify distance between views and output edges with `` + - `` + - Set menu item font with `` + - Allow `` without place="" attribute, thus enabling + simpler config files + - Support `` with `contexts` (e.g. `TitleBar`, `Left`, + `TLCorner`, `Frame`), `buttons` (e.g. `left`, `right`), and + `mouse actions` (e.g. `Press`, `DoubleClick`). Modifier keys are + also supported to handle configurations such as `alt` + mouse button + to move/resize windows. (Written-by: @bi4k8, @apbryan) + - `` configuration. Written-by: @ARDiDo + - `` +- Support for primary selection. Written-by: @telent +- Support 'alt-tab' on screen display when cycling between windows + including going backwards by pressing `shift` (Written-by: @Joshua-Ashton) + and cancelling with `escape` (Written-by: @jlindgren90) +- Add the following theme options: + - set buttons colors individually (for iconify, close and maximize) + - `window.(in)active.label.text.color` + - `window.label.text.justify` + - OSD colors +- Show application title in window decoration title bar +- Handle double click on window decoration title bar +- Support a 'resize-edges' area that is wider than than the visible + window decoration. This makes it easier to grab edges to resize + windows. +- Add window actions 'MoveToEdge', 'ToggleMaximize', 'Close', 'Iconify', + 'ToggleDecorations', 'ToggleFullscreen', 'SnapToEdge', 'Focus', 'Raise', + 'Move', 'MoveToEdge', 'Resize', 'PreviousWindow', 'ShowMenu' +- Add labwc.desktop for display managers +- layer-shell: + - Take into account exclusive areas of clients (such as panels) when + maximizing windows + - Support popups +- Handle xwayland `set_decorations` and xdg-shell-decoration requests. + Written-by: @Joshua-Ashton +- Handle view min/max size better, including xwayland hint support. + Written-by: @Joshua-Ashton +- Handle xwayland move/resize events. Written-by: @Joshua-Ashton +- Support audio and monitor-brightness keys by default +- Catch ctrl-alt-F1 to F12 to switch tty +- Support `XCURSOR_THEME` and `XCURSOR_SIZE` environment variables +- Support submenus including inline definitions + +### Changed + +- The config option `` has changed to + `` (breaking change) + +## [0.3.0] - 2021-06-28 + +Compile with wlroots 0.14.0 + +### Added + +- Add config options `` and `` + (provided-by: Mikhail Kshevetskiy) +- Do not use Clearlooks-3.4 theme by default, just use built-in theme +- Fix bug which triggered Qt application segfault + +## [0.2.0] - 2021-04-15 + +Compile with wlroots 0.13.0 + +### Added + +- Support wlr-output-management protcol for setting output position, scale + and orientation with kanshi or similar +- Support server side decoration rounded corners +- Change built-in theme to match default GTK style +- Add labwc-environment(5) +- Call `wlr_output_enable_adaptive_sync()` if `LABWC_ADAPTIVE_SYNC` set + +## [0.1.0] - 2021-03-05 + +Compile with wlroots 0.12.0 and wayland-server >=1.16 + +### Added + +- Support xdg-shell and optionally xwayland-shell +- Show xbm buttons for maximize, iconify and close +- Support layer-shell protocol (partial) +- Support damage tracking to reduce CPU usage +- Support very basic root-menu implementation +- Re-load config and theme on SIGHUP +- Support simple configuration to auto-start applications, set + environment variables and specify theme, font and keybinds. +- Support some basic theme settings for window borders and title bars +- Support basic actions including Execute, Exit, NextWindow, Reconfigure and + ShowMenu + +[Keep a Changelog]: https://keepachangelog.com/en/1.0.0/ +[0.5.2]: https://github.com/labwc/labwc/releases/tag/0.5.2 +[0.5.1]: https://github.com/labwc/labwc/releases/tag/0.5.1 [0.5.0]: https://github.com/labwc/labwc/releases/tag/0.5.0 [0.4.0]: https://github.com/labwc/labwc/releases/tag/0.4.0 [0.3.0]: https://github.com/labwc/labwc/releases/tag/0.3.0 diff --git a/meson.build b/meson.build index 68fd06db..84a725e1 100644 --- a/meson.build +++ b/meson.build @@ -1,7 +1,7 @@ project( 'labwc', 'c', - version: '0.5.1', + version: '0.5.2', license: 'GPL-2.0-only', meson_version: '>=0.59.0', default_options: [