2022-02-28 23:06:28 +00:00
|
|
|
# Introduction
|
2021-04-15 21:31:09 +01:00
|
|
|
|
|
|
|
|
This file contains significant user-visible changes for each version.
|
2022-02-28 23:06:28 +00:00
|
|
|
For full changelog, use `git log`.
|
2021-04-15 21:31:09 +01:00
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
The format is based on [Keep a Changelog]
|
2022-02-18 21:54:07 +00:00
|
|
|
|
2022-03-07 21:24:33 +00:00
|
|
|
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.
|
2022-02-28 23:06:28 +00:00
|
|
|
|
|
|
|
|
# Summary of Releases
|
|
|
|
|
|
|
|
|
|
| Date | Release notes | wlroots version | lines-of-code |
|
|
|
|
|
|------------|---------------|-----------------|---------------|
|
2022-05-17 20:39:49 +01:00
|
|
|
| 2022-05-17 | [0.5.2] | 0.15.1 | 8829 |
|
2022-04-08 22:06:51 +01:00
|
|
|
| 2022-04-08 | [0.5.1] | 0.15.1 | 8829 |
|
2022-02-28 23:06:28 +00:00
|
|
|
| 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 |
|
|
|
|
|
|
2022-03-07 21:24:33 +00:00
|
|
|
## 0.6.0 - unreleased
|
|
|
|
|
|
|
|
|
|
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
|
2022-05-01 14:38:45 +10:00
|
|
|
heavy lifting with this. Native language support has been added by
|
|
|
|
|
@01micko.
|
2022-03-07 21:24:33 +00:00
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
|
|
- Presentation protocol
|
|
|
|
|
|
2022-05-17 20:39:49 +01:00
|
|
|
## [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
|
2022-04-08 22:06:51 +01:00
|
|
|
|
|
|
|
|
### 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
|
2022-02-18 21:54:07 +00:00
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
### Fixed
|
2022-02-18 21:54:07 +00:00
|
|
|
|
2022-04-08 22:06:51 +01:00
|
|
|
- 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
|
2022-02-28 23:06:28 +00:00
|
|
|
- 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
|
2022-02-18 21:54:07 +00:00
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
### Added
|
|
|
|
|
|
2022-02-18 21:54:07 +00:00
|
|
|
- Render overlay layer popups to support sfwbar (issue #239)
|
|
|
|
|
- Support HiDPI on-screen-display images for outputs with different scales
|
2022-03-01 20:42:00 +00:00
|
|
|
- Reload environment variables on SIGHUP (issue #227)
|
2022-02-18 21:54:07 +00:00
|
|
|
- Add client menu
|
|
|
|
|
- Allow applications to start in fullscreen
|
|
|
|
|
- Add config option `<core><cycleViewPreview>` 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
|
|
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
### Changed
|
2022-02-18 21:54:07 +00:00
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
This release contains the following two breaking changes:
|
2022-02-18 21:54:07 +00:00
|
|
|
|
2022-02-28 23:06:28 +00:00
|
|
|
- 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 `<mousebind>` 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 `<keyboard><default />`
|
|
|
|
|
- `<keyboard><repeatRate>` and `<keyboard><repeatDelay>`
|
|
|
|
|
- Specify distance between views and output edges with `<core><gap>`
|
|
|
|
|
- `<core><adaptiveSync>`
|
|
|
|
|
- Set menu item font with `<theme><font place="MenuItem">`
|
|
|
|
|
- Allow `<theme><font>` without place="" attribute, thus enabling
|
|
|
|
|
simpler config files
|
|
|
|
|
- Support `<mousebind>` 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)
|
|
|
|
|
- `<libinput>` configuration. Written-by: @ARDiDo
|
|
|
|
|
- `<resistance><screenEdgeStrength>`
|
|
|
|
|
- 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 `<lab><xdg_shell_server_side_deco>` has changed to
|
|
|
|
|
`<core><decoration>` (breaking change)
|
|
|
|
|
|
|
|
|
|
## [0.3.0] - 2021-06-28
|
|
|
|
|
|
|
|
|
|
Compile with wlroots 0.14.0
|
|
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
|
|
- Add config options `<focus><followMouse>` and `<focus><raiseOnFocus>`
|
|
|
|
|
(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/
|
2022-05-17 20:39:49 +01:00
|
|
|
[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
|
2022-02-18 21:54:07 +00:00
|
|
|
[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
|
|
|
|
|
[0.2.0]: https://github.com/labwc/labwc/releases/tag/0.2.0
|
|
|
|
|
[0.1.0]: https://github.com/labwc/labwc/releases/tag/0.1.0
|
2021-03-06 11:45:45 +00:00
|
|
|
|