1.0-rc1
Pre-release
Pre-release
Sway 1.0-rc1 contains 311 changes from 32 contributors since 1.0-beta2. The release candidates are considered complete and will receive no new features, only bug fixes. Once a release candidate sees a week of testing without turning up any new bugs, it will become a stable release.
The recommended wlroots version to use with this sway release is 0.3.
Package maintainers: please do not package this release.
Changes
- swayidle and swaylock are now standalone projects and must be installed separately. These no longer depend on wlroots or sway's internals and can be used with other Wayland compositors.
- The minimum required scdoc version is now 1.8.1 (for generating man pages)
- The minimum required systemd version (for optional systemd integration) is now 239
New features
- Add tray support to swaybar. Note: this is limited to the SNI protocol. The legacy Xembed protocol is not yet supported, nor is the canonical dbus menu.
- Pointer constraints (necessary for locking the pointer in video games) is now supported
- Add
hide_cursor <timeout>
to hide the cursor when not in use - Support for clipboard managers such as wl-clipboard via the data-control-v1 protocol
- Tiling containers can now be stickied
- i3's
fullscreen global
command has been implemented - Seat commands can now refer to seat "-" to affect the current seat
- Add a new
xwayland
command to disable Xwayland in the config file - Add a new
tiling_drag_threshold
command
Improvements
- swaylock: clear password buffer on Ctrl-C, submit password on Ctrl-D
- Use meson feature options for build configuration
- Allow output ids and wildcard for workspace output
- Add option to bindsym/bindcode to suppress warning on override
- Add relative coordinates in JSON for i3bar click events
- swaybar: handle block->urgent
- Add
fullscreen_mode
to get_tree output - Allow tiling views to be dragged by the titlebar
- Change mouse buttons to x11 map and libevdev names
- Revamp seat configs
- swaylock: Add caps lock state to indicator
- swaybar: add status_padding command
- swaybar: add status_edge_padding command
- cursor: allow mapping to all outputs
- cursor: allow scrolling tabs/stack on title border
- bind{code,sym}, seat_cmd_cursor, bar_cmd_bind, input_cmd_scroll_button: improve mouse button parsing
- input_cmd_events: implement toggle
- get_inputs: add libinput send events mode
- Extend
input <identifier> events toggle
with a list of modes to toggle through
Bugfixes
This release is mostly bug fixes.
- Various shell completion improvements and fixes
- Fix the error result of the fullscreen command
- Fix outputs that are never enabled
- Keep focus when destroying containers on non-visible workspace
- swaybar: fix seperator block width for mixed scales
- swaybar: fix cursor scale
- swaynag: damage the cursor surface on update
- Terminate swaybg in output_disable
- Fix crash when scratchpad contains split containers
- Set font options when computing text width
- seat: unhide the cursor if it is warped to focus
- swaybar: fix rendering of border and background
- swaybar: obey height if given
- Handle empty $XDG_CONFIG_HOME better, without setting it
- Remove 'input' field of IPC command return json
- Disarm key repeat on reload
- Resize only current and immediate siblings rather than all siblings
- Handle hidden scratchpad containers in commands
- Permit resizing hidden scratchpad containers in some cases
- Don't abort when creating layer surfaces with zero outputs