Skip to content

Releases: swaywm/sway

1.3-rc3

15 Jan 17:11
1.3-rc3
bdcec5a
Compare
Choose a tag to compare
1.3-rc3 Pre-release
Pre-release
sway 1.3-rc3

Brian Ashworth (2):
      view: remove workspace pid mapping for assigns
      container: add inactive fullscreen to focus stack

Cassandra McCarthy (1):
      integer scaling, not integral

JR Boyens (1):
      Use transparency arg in the window focus event

Jason (1):
      Docs: explain why menu command should be passed to sway

Jason Nader (1):
      Amend typo

Simon Ser (2):
      Fix unreliable scaling filter
      Revert "Make all the container dimensions integers"

1.3-rc2

08 Jan 15:30
Compare
Choose a tag to compare
1.3-rc2 Pre-release
Pre-release
sway 1.3-rc2

Andri Yngvason (2):
      input: Assign virtual input devices to their selected seats
      swaybar: Fix input device removal

Brian Ashworth (2):
      input/cursor: handle image surface destroy
      input/cursor: handle setting a NULL image surface

Pedro Côrte-Real (3):
      Avoid numerical instability in resize
      Make sure we don't calculate fractional pixel gaps
      Make all the container dimensions integers

Ross Schulman (1):
      Fix small typo in sway-input(5)

Rouven Czerwinski (1):
      xwayland: handle size_hints == NULL

Thayne McCombs (1):
      Add missing items to documentation for GET_TREE response in ipc.

sway 1.3-rc1

31 Dec 15:38
Compare
Choose a tag to compare
sway 1.3-rc1 Pre-release
Pre-release

Sway 1.3-rc1 includes 156 changes from 44 contributors.

A. M. Joseph (1):
      xwayland.c handle_map(): NULL out xsurface->data() to prevent crashing.

Aleksis (1):
      remove unused layer shell surface variable

Antonin Décimo (5):
      ipc-client: remove useless free for failed malloc
      input: check pointer against nullptr
      view_update_size: fix surface_width/height mismatch
      Fix memory leaks
      Remove redundant checks

Arkadiusz Hiler (1):
      Fix syntax in examples in sway-output(5)

Ben Brown (2):
      Fix typo for the force/immediate option in xwayland_mode enum
      Add icon_theme_path to find_icon() search if set

Benjamin Cheng (2):
      input/cursor: pass gesture events to clients
      input/cursor: remove gesture listeners in destroy

Brian Ashworth (36):
      workspace: prefer identifiers for output priority
      handle_seat_node_destroy: do not focus own node
      workspace: do not destroy if any seat is focusing
      swaymsg.1: add tip about two hyphens for commands
      container_replace: copy {width,height}_fraction
      workspace_split: focus middle if workspace focused
      sway{,-bar}.5: add link to pango font description
      input/seatop_down: add axis handler
      input/keyboard: send released only if pressed sent
      cmd_xwayland: add force for immediate launch
      sway.5: remove mention of floating_scroll
      cmd_move: fix move to scratchpad hidden container
      cmd_mode: don't reset to default after subcommand
      seatop_default: only focus container on press
      swaybar: complete barconfig_update event handling
      sway.5: clarify that a marks are unqiue
      view: always populate pid
      input/keyboard: cleanup xkb_file error handing
      input_cmd_xkb_file: allow shell path expansion
      Add support for wlr_keyboard_group
      input/keyboard: check keyboard group before remove
      config: improvements to the reload validation
      input/keyboard: reset seat keyboard on destroy
      config: apply input type configs on reload
      layer-shell: unfocus output-less layer on unmap
      input/keyboard: remove group listeners on destroy
      input/keyboard: defer wlr_keyboard_group destroy
      config/input: set type for new identifier configs
      root_scratchpad_hide: disable fullscreen descendants
      input/seatop_default: fix focusing floating titles
      seat_cmd_keyboard_grouping: chang* Compositors now need to call `wlr_output_commit` after `wlr_output_enable`, `wlr_output_set_mode`, `wlr_output_set_custom_mode`, `wlr_output_set_transform` or `wlr_output_set_scale`
* `wlr_output_set_mode` no longer implicitly enables the output, compositors need to call `wlr_output_enable` as well
* Compositors now need to call `wlr_output_rollback` after `wlr_output_attach_render` if they decide not to rendere keymap to smart
      layer-shell: refocus if keyboard interactive lost
      parse_color: return success + drop fallback color
      cmd_client_*: refactor duplicated code
      bar_cmd_colors: remove add_color
      cmd_client_*: support optional args for i3 compat

Danilo Spinella (1):
      Fix refresh rate scale of output

Dark (1):
      Update titlebar borders to match i3's current behavior.

Drew DeVault (11):
      layer-shell: add support for popups
      Add _incr_version to contrib/
      chmod +x contrib/_incr_version
      config.in: set default term to alacritty
      Update .github/FUNDING.yml
      Update version to 1.2
      Updates per wlroots layer shell changes
      Add seat <seat> idle_{inhibit,wake} <sources...>
      License wallpapers as CC-0
      _incr_version: prompt for target wlroots release
      _incr_version: always overwrite old version number

Ilia Bozhinov (1):
      properly check pixman_region32_contains_rectangle return

Ivan Molodetskikh (9):
      Add Russian translation of the README
      render: set surface as sampled for presentation
      output: add max_render_time
      Add sway_surface
      view: add max_render_time
      Add max_render_time to output JSON
      Add max_render_time to view JSON
      output: check wlr_output in repaint handler
      Add note about backends to output max_render_time

Jason (1):
      Amend typos

Jayce Fayne (1):
      Revert "fix bar_state_update/input event"

John Chadwick (1):
      input: Add support for tablet protocol.

Josef Gajdusek (1):
      Add virtual pointer protocol

Kenny Levinsen (5):
      Ensure that seat->focused_layer is cleared on unmap
      output: Ensure that frame_done is delayed on max_render_time
      output: Replace block_idle_frame with frame_pending
      output: Schedule idle frames if we do not render
      output: Restore previous max_render_time behavior

Kirill Chibisov (1):
      Fix tiled containers resize with mouse

Konstantin Pospelov (2):
      swaybar: do not retry search for tray icons
      swaybar: fix typo in the loop over pixmaps

Laurent Bonnans (1):
      ipc: collapse multi-container command results

Lauri (1):
      Grimshot: a helper for screenshots within sway

Manuel Mendez (1):
      grimshot: fix branching on command exit status

Manuel Stoeckl (1):
      desktop/surface: Fix crash when timer is NULL

Martin Michlmayr (4):
      Fix markup syntax in man pages
      swaymsg.1: fix description of --pretty
      sway-output.5: fix variable name
      swaymsg.1: fix typos

Michael Aquilina (1):
      Fix formatting for title_format in man 5 sway Use explicit linebreaks to make scdoc use a separate line for each entry listed

NightFeather (1):
      Add Chinese (zh-TW) translation of README

Nils ANDRÉ-CHANG (1):
      Fix type (an -> and)

Paul Riou (2):
      input: seat: Fix seat device list not initialised before use
      Fix sway_log using non initialised output_config pointer

Rex Hackbro (2):
      Rename 'node' to 'nodes' in swayipc doc
      fix bar_state_update/input event

Robert Günzler (1):
      Skip line continuation when it is a comment

Ronan Pigott (12):
      view: create container before selecting workspace
      focus: support focus prev|next [sibling]
      criteria: make literal comparison for __focused__ values
      focus: do nothing on focus prev|next for workspaces
      seatop_move_floating: make container respect pointer constraint
      seatop_default: handle focus for xwayland_unmanaged views
      smart_borders: separate smartness from edge types
      Prefer higher refresh rate default modes
      seatop_default: handle focus for unmanaged xwayland windows last
      add scale_filter output config option
      Fix lingering workspace with scratchpad show
      config/output: apply scale_filter even when scale has not changed

Rouven Czerwinski (2):
      sway(5): move workspace_layout to config only
      xwayland: get_constraints using size hints

Sebastian Krzyszkowiak (2):
      layer_shell: Guard against negative exclusive zone
      layer-shell: Fix damage tracking of nested popups

Sheena Artrip (1):
      Rename symbol set_cloexec to sway_set_cloexec, remove duplicates.

Simon Ser (20):
      Remove xdg-shell v6 support
      layer-shell: don't give focus to unmapped layer surfaces
      man: document how to specify multiple xkb layouts and options
      Error out on unknown debug flag
      build: update wlroots version, be more strict
      Add support for fullscreen view direct scan-out
      Fix direct scan-out flickering
      build: bump wlroots version to 0.8.1
      build: always use the project version
      Fix apply_output_config return value when enabling output
      Fix segfault in wlr_output_manager_v1_set_configuration
      Handle layer changes for layer shell surfaces
      Fix presentation feedback when scanning out fullscreen view
      Add --custom to `output mode` command
      Fix segfault in set_mode
      Use wlr_output_preferred_mode instead of the last mode
      Add -Wno-missing-braces
      Use new presentation-time helper
      Auto-detect output scale
      Re-add support for wlr_output's atomic API

Tadeo Kondrak (3):
      build: remove rootston from wlroots subproject
      Implement input map_to_region command
      Use an enum instead of a marker string for map_to_

Thorben Günther (2):
      Improve transparency script
      A Script to change sway workspace name.

Versus Void (1):
      Do not search for edges on subsurfaces, fix #4381

Whemoon Jang (1):
      Fix typo in swaybar-protocol.7.scd

Wieland Hoffmann (2):
      sway(5): Add a missing verb
      sway(5): Highlight valid values in the description of tiling_drag

asdfjkluiop (1):
      A layer-shell will only be focused if it is non-null

lbonn (6):
      Allow moving a container hidden in scratchpad
      focus: support focus_wrapping workspace
      seat: simplify a strdup
      Fix various memory leaks
      Fix potential NULL reference on cleanup
      focus: add a NULL check in `focus <direction>`

xPMo (1):
      Fix bar_state_update docs

xdavidwu (3):
      seat: avoid unneeded reloading xcursor theme
      seat: set cursor image only if no pointer cap previously
      swaybar: make status block text render in the same way as others

sway 1.2

27 Aug 04:50
Compare
Choose a tag to compare

sway 1.2 includes 128 changes from 37 contributors. This release improves compatibility with i3 4.17, adds a small number of new features, and fixes many bugs.

Abdelhakim Qbaich (1):
      Add the missing constant for the switch input type

Aidan Harris (1):
      Fix segfault with "xwayland false" (#4228)

Alex Maese (1):
      Unhide cursor on cursor activity after touch

Alyssa Ross (2):
      bar: fix segfault with missing or invalid bar id
      commands/bar: improve error for invalid subcommand

Antonin Décimo (7):
      Allocator sizeof operand mismatch
      Remove unused variable
      ipc-client: remove useless free for failed malloc
      input: check pointer against nullptr
      view_update_size: fix surface_width/height mismatch
      Fix memory leaks
      Remove redundant checks

Ashkan Kiani (1):
      Avoid adding duplicate criteria for no_focus and command

Brian Ashworth (52):
      Destroy swaybg client on reload
      config/output: fix typo in merge_id_on_name
      Spawn swaybar as a wayland client
      input/keyboard: attempt default keymap on failure
      commands/bar: fix mode and hidden_state at runtime
      input/switch: fix indentation of file
      common/ipc-client: remove ipc recv timeout log
      bindings: allow unlocked and locked bindings
      Add swaybar protocol documentation
      cmd_hide_edge_borders: add missing arg count check
      criteria: reset on semicolon separation
      commands/input: perform basic keymap validation
      config/input: validate xkb keymap before storing
      bindings: defer while initiailizing
      config/xwayland: retain xwayland status on reload
      config: fix find_handler logic
      cmd_seat: split action and config handlers
      cmd_mode: allow runtime creation and modification
      ws-output-priority: fix logic issue in find_output
      swaybar-protocol.7: fix block border descriptions
      cmd_bindswitch: add option to execute on reload
      input/libinput: only reset supported options
      config/output: correctly set width/height in apply
      cmd_layout: toggle split for tabbed/stack default
      cmd_split: fix toggle split for non-split layouts
      cmd_output: support current output alias
      input_cmd_xkb_switch_layout: support input types
      ipc: add an input event
      ipc: add input::libinput_config event
      arrange: remove gaps for workspace location deltas
      input/libinput: fix typo in set_middle_emulation
      libinput: fix set_send_events
      input/keyboard: don't reset layout for same keymap
      bindsym/code: add group support
      input/libinput: typo fixes (get -> get_default)
      cmd_swap: add floating support
      input/cursor: do not hide when buttons are pressed
      swaymsg: return 2 for sway errors
      cmd_mode: make modes case sensitive
      config/output: rebase cursors after config applied
      sway.5: explain how to enable pango markup in font
      handle_seat_node_destroy: do not focus own node
      workspace: do not destroy if any seat is focusing
      swaymsg.1: add tip about two hyphens for commands
      container_replace: copy {width,height}_fraction
      workspace_split: focus middle if workspace focused
      sway{,-bar}.5: add link to pango font description
      input/seatop_down: add axis handler
      input/keyboard: send released only if pressed sent
      sway.5: remove mention of floating_scroll
      cmd_move: fix move to scratchpad hidden container
      cmd_mode: don't reset to default after subcommand

Daniel Eklöf (3):
      add seat sub command 'xcursor_theme'
      swaybar/nag: use xcursor theme defined by XCURSOR_THEME/SIZE
      check for empty string before calling strtoul() and check errno

Dark (1):
      Update titlebar borders to match i3's current behavior.

Drew DeVault (9):
      Add Firefox note to ISSUE_TEMPALTE.md
      Create FUNDING.yml
      Bump meson version to 1.1
      Remove rootston from build manifests
      layer-shell: add support for popups
      Add _incr_version to contrib/
      chmod +x contrib/_incr_version
      Further refinements to _incr_version script
      Update version to 1.2

Ed Younis (2):
      Implement input_cmd_xkb_file (#3999)
      input_cmd_xkb_*: cleanup includes

Ilia Bozhinov (1):
      properly check pixman_region32_contains_rectangle return

Jeff Peeler (1):
      cmd_opacity: add relative opacity changes

Josef Gajdusek (4):
      Implement wlr-output-management-v1
      Update output manager config on all output events
      Provide current DPMS state in GET_OUTPUTS
      Update output manager on layout change

Kenny Levinsen (1):
      Use parent get_root_coords in subsurfaces

Laurent Bonnans (1):
      ipc: collapse multi-container command results

Manuel Stoeckl (2):
      Replace meson generator with custom_target
      Use -fmacro-prefix-map to strip build path

Matt Coffin (1):
      Fix segfaults caused by faulty command parsing

Michael Aquilina (1):
      Fix formatting for title_format in man 5 sway Use explicit linebreaks to make scdoc use a separate line for each entry listed

Moelf (1):
      Implement output toggle

Nick Paladino (1):
      Make comment casing consistient

Nomeji (1):
      Add infos to help using for_window to man 5

Paul Ouellette (1):
      Fix typo in sway(5) manpage

Pedro Côrte-Real (7):
      Layout correctly with several new windows
      Layout tiled using a width/height fraction
      Rework gaps code to be simpler and correct
      Sanity check gaps between tiled containers
      Avoid negative outer gaps
      Sanity check gaps on the outside of the workspace
      Fix resize sibling amount calculations

Robert Sacks (1):
      Add missing underscore in bindswitch documentation

Rouven Czerwinski (3):
      desktop: output: fix use-after-free in destroy
      Fix sway crashes for scratchpad layouts
      Revert "Add support for wlr_output's atomic API"

Sauyon Lee (1):
      Make fullscreen check for fullscreen parents

Sebastian Krzyszkowiak (1):
      layer_shell: Guard against negative exclusive zone

Sebastian Parborg (1):
      Make mouse drag in tiled mode swap containers if no edge is selected

Sergei Dolgov (4):
      Add calibration_matrix config option
      Use isnan
      calibration_matrix: add the current matrix to the IPC description for libinput devices
      calibration_matrix: expect 6 individual values

Simon Ser (8):
      Fix xdg-decoration unconfigured if set before first commit
      Remove orbital gamma-control protocol
      ipc: add xkb_layout_names and xkb_active_layout_index
      Add a new xkb_switch_layout command
      Add missing docs for xkb_switch_layout
      Add docs for new IPC keyboard properties
      Remove all wayland-server.h includes
      Add support for wlr_output's atomic API

asdfjkluiop (1):
      A layer-shell will only be focused if it is non-null

jasperro (1):
      Added Dutch translation of README

lbonn (1):
      Allow moving a container hidden in scratchpad

murray (1):
      use surface coordinates for damaging buffers

random human (1):
      tree: set correct border value before creating floater

rpigott (1):
      Add missing description for focus_on_window_activation command in docs.

1.2-rc2

20 Aug 06:08
Compare
Choose a tag to compare
1.2-rc2 Pre-release
Pre-release

sway 1.2 includes 126 changes from 32 contributors. This release improves compatibility with i3 4.17, adds a small number of new features, and fixes many bugs.

Additionally, this release adds support for layer-shell popups, making the MATE panel usable on Sway, among other useful tools. This release also recommends the use of wlroots 0.7.0 (note: not released until the final sway release), and adds support for tools like wdisplays, a GTK+ GUI for configuring displays on supported compositors.

Antonin Décimo (5):
      ipc-client: remove useless free for failed malloc
      input: check pointer against nullptr
      view_update_size: fix surface_width/height mismatch
      Fix memory leaks
      Remove redundant checks

Brian Ashworth (7):
      handle_seat_node_destroy: do not focus own node
      workspace: do not destroy if any seat is focusing
      swaymsg.1: add tip about two hyphens for commands
      container_replace: copy {width,height}_fraction
      workspace_split: focus middle if workspace focused
      sway{,-bar}.5: add link to pango font description
      input/seatop_down: add axis handler

Drew DeVault (1):
      layer-shell: add support for popups

Ilia Bozhinov (1):
      properly check pixman_region32_contains_rectangle return

Sebastian Krzyszkowiak (1):
      layer_shell: Guard against negative exclusive zone

1.2-rc1

09 Aug 01:45
Compare
Choose a tag to compare
1.2-rc1 Pre-release
Pre-release

sway 1.2 includes 99 changes from 30 contributors. This release improves
compatibility with i3 4.17, adds a small number of new features, and
fixes many bugs.

Abdelhakim Qbaich (1):
      Add the missing constant for the switch input type

Aidan Harris (1):
      Fix segfault with "xwayland false" (#4228)

Alex Maese (1):
      Unhide cursor on cursor activity after touch

Alyssa Ross (2):
      bar: fix segfault with missing or invalid bar id
      commands/bar: improve error for invalid subcommand

Antonin Décimo (2):
      Allocator sizeof operand mismatch
      Remove unused variable

Ashkan Kiani (1):
      Avoid adding duplicate criteria for no_focus and command

Brian Ashworth (41):
      Destroy swaybg client on reload
      config/output: fix typo in merge_id_on_name
      Spawn swaybar as a wayland client
      input/keyboard: attempt default keymap on failure
      commands/bar: fix mode and hidden_state at runtime
      input/switch: fix indentation of file
      common/ipc-client: remove ipc recv timeout log
      bindings: allow unlocked and locked bindings
      Add swaybar protocol documentation
      cmd_hide_edge_borders: add missing arg count check
      criteria: reset on semicolon separation
      commands/input: perform basic keymap validation
      config/input: validate xkb keymap before storing
      bindings: defer while initiailizing
      config/xwayland: retain xwayland status on reload
      config: fix find_handler logic
      cmd_seat: split action and config handlers
      cmd_mode: allow runtime creation and modification
      ws-output-priority: fix logic issue in find_output
      swaybar-protocol.7: fix block border descriptions
      cmd_bindswitch: add option to execute on reload
      input/libinput: only reset supported options
      config/output: correctly set width/height in apply
      cmd_layout: toggle split for tabbed/stack default
      cmd_split: fix toggle split for non-split layouts
      cmd_output: support current output alias
      input_cmd_xkb_switch_layout: support input types
      ipc: add an input event
      ipc: add input::libinput_config event
      arrange: remove gaps for workspace location deltas
      input/libinput: fix typo in set_middle_emulation
      libinput: fix set_send_events
      input/keyboard: don't reset layout for same keymap
      bindsym/code: add group support
      input/libinput: typo fixes (get -> get_default)
      cmd_swap: add floating support
      input/cursor: do not hide when buttons are pressed
      swaymsg: return 2 for sway errors
      cmd_mode: make modes case sensitive
      config/output: rebase cursors after config applied
      sway.5: explain how to enable pango markup in font

Daniel Eklöf (3):
      add seat sub command 'xcursor_theme'
      swaybar/nag: use xcursor theme defined by XCURSOR_THEME/SIZE
      check for empty string before calling strtoul() and check errno

Drew DeVault (4):
      Add Firefox note to ISSUE_TEMPALTE.md
      Create FUNDING.yml
      Bump meson version to 1.1
      Remove rootston from build manifests

Ed Younis (2):
      Implement input_cmd_xkb_file (#3999)
      input_cmd_xkb_*: cleanup includes

Jeff Peeler (1):
      cmd_opacity: add relative opacity changes

Josef Gajdusek (4):
      Implement wlr-output-management-v1
      Update output manager config on all output events
      Provide current DPMS state in GET_OUTPUTS
      Update output manager on layout change

Kenny Levinsen (1):
      Use parent get_root_coords in subsurfaces

Manuel Stoeckl (2):
      Replace meson generator with custom_target
      Use -fmacro-prefix-map to strip build path

Matt Coffin (1):
      Fix segfaults caused by faulty command parsing

Moelf (1):
      Implement output toggle

Nick Paladino (1):
      Make comment casing consistient

Nomeji (1):
      Add infos to help using for_window to man 5

Paul Ouellette (1):
      Fix typo in sway(5) manpage

Pedro Côrte-Real (7):
      Layout correctly with several new windows
      Layout tiled using a width/height fraction
      Rework gaps code to be simpler and correct
      Sanity check gaps between tiled containers
      Avoid negative outer gaps
      Sanity check gaps on the outside of the workspace
      Fix resize sibling amount calculations

Robert Sacks (1):
      Add missing underscore in bindswitch documentation

Rouven Czerwinski (3):
      desktop: output: fix use-after-free in destroy
      Fix sway crashes for scratchpad layouts
      Revert "Add support for wlr_output's atomic API"

Sauyon Lee (1):
      Make fullscreen check for fullscreen parents

Sebastian Parborg (1):
      Make mouse drag in tiled mode swap containers if no edge is selected

Sergei Dolgov (4):
      Add calibration_matrix config option
      Use isnan
      calibration_matrix: add the current matrix to the IPC description for libinput devices
      calibration_matrix: expect 6 individual values

Simon Ser (8):
      Fix xdg-decoration unconfigured if set before first commit
      Remove orbital gamma-control protocol
      ipc: add xkb_layout_names and xkb_active_layout_index
      Add a new xkb_switch_layout command
      Add missing docs for xkb_switch_layout
      Add docs for new IPC keyboard properties
      Remove all wayland-server.h includes
      Add support for wlr_output's atomic API

jasperro (1):
      Added Dutch translation of README

murray (1):
      use surface coordinates for damaging buffers

random human (1):
      tree: set correct border value before creating floater

rpigott (1):
      Add missing description for focus_on_window_activation command in docs.

sway 1.1.1

03 Jun 13:55
Compare
Choose a tag to compare
This release removes two commits which were mistakenly included in sway
1.1, but are incompatible with wlroots 0.6.0.

Sway 1.1

03 Jun 12:45
Compare
Choose a tag to compare

sway 1.1 includes 255 changes from 58 contributors. This release introduces a few new features, but for the most part just fixes bugs and improves i3 compatibility.

swaybg is now distributed as a standalone program which is compatible with many Wayland compositors. Unlike the other sway clients which have been split into separate projects, however, swaybg is a required dependency of sway. Packagers are encouraged to configure it as such when updating sway for their distribution.

You do not have to change your sway configuration to accomodate for the swaybg changes - the same output commands will still work.

Changes

  • swaybg is now a standalone project

New Features

  • swaybar now includes touch support - tapping to activate hotspots and dragging across to cycle through workspaces
  • You can now manually inhibit idle notifications (DPMS) when a certain criteria is active via inhibit_idle
  • Keybindings can now be unconfigured at runtime via unbind{sym,code,switch}
  • workspace {prev,next}_on_output --create will create the next workspace instead of wrapping to the start
  • Output subpixel layouts can now be explicitly configured
  • i3bar's short_text properties in the JSON protocol are now supported
  • swaybar now supports an "overlay" mode, which shows the bar on top of other windows and doesn't process input events
  • Switch devices (like lid switches) are now supported and can be bound to actions via bindswitch
  • swaymsg now supports a -p/--pretty option for explicitly enabling pretty-printing

Changelog

3ap (1):
      config.in: allow launch apps with args via dmenu

Alex Maese (7):
      Fix a crash in swaybar when an icon dir is not readable
      Create unbindsym and unbindcode commands
      Add unbindswitch command
      Add unbindsym/unbindcode command for swaybar
      Clear pointer focus during move and resize seatops
      Don't send pointer motion when rebasing the cursor
      Fix a silly mistake

Alyssa Ross (1):
      bar: fix segfault with missing or invalid bar id

Ashkan Kiani (5):
      Fix crash for floating command on scratchpad window
      Fix scratchpad logic for floating windows
      Fix potential null accesses
      Add documentation for rename workspace
      Fix the payload type returned by IPC

Ben Challenor (1):
      Make raw keysyms take precedence over translated

Benjamin Cheng (2):
      Add heuristics to differentiate touchpads
      Implement input type configs (#3784)

Brian Ashworth (94):
      seat_cmd_cursor: do not create non-existing seat
      load_include_configs: fix wordexp fail condition
      swaynag: remove trailing newlines in config
      execute_command: dont strip quotes for exec_always
      IPC_COMMAND: split on newline
      cmd_workspace_gaps: fix double free on bad amount
      output_cmd_background: fix no file + valid mode
      load_main_config: add realpath to config_chain
      Clarify error for options and positional args
      load_main_config: use given path, store realpath
      seat_configure_tablet_tool: configure xcursor
      bar_cmd_modifier: add support for none
      container_at_stacked: skip titles when zero pixels
      input/keyboard: respect solo repeat_{rate,delay}
      view: remove pointer constraints on unmap
      ipc: handle unnamed xkb_active_layout_name
      fix misc memory leaks
      Abort early when XDG_RUNTIME_DIR is not set
      workspace_get_initial_output: handle focused layer
      cursor: relative-pointer-v1 time is usec
      subsurface_get_root_coords: break on NULL
      seatop_move_tiling: use tab/stack parent not self
      seat: allow tree focus changes while layer focused
      seatop_move_tiling: do not move to descendant
      apply_output_config: dpms on before modeset
      Fix reload freeze when not modsetting current mode
      sway-input.5: document wildcard and identifier troubleshooting
      workspace_next_name: fallback to next available number
      seat_cmd_cursor: fix typo in expected syntax
      Use container under cursor for mouse bindings
      output_evacuate: call workspace_consider_destroy
      output_get_active_workspace: check workspaces length
      Handle NULL from output_get_active_workspace
      move scratchpad: hide visible scratchpad container
      input/cursor: allow whole-window bindings on ws
      handle_layer_shell_surface: do not use noop output
      handle_seat_node_destroy: update seat->workspace
      execute_command: do not strip qoutes for cmd_mode
      Add sway-ipc.7.scd to document IPC protocol
      sway-ipc.7: clarify window_rect omits decorations
      floating_maximum_size: change default behavior
      render_floating: skip fullscreen floaters
      sway.1.scd: document environment vars set by sway
      meson: update scdoc requirement to >= 1.9.2
      ipc: change {,deco_}rect to match i3
      ipc: fix rect for stacked children
      ipc: fix fullscreen deco_rect
      ipc: describe libinput device configuration
      output_damage_whole_container: damage subsurfaces
      damage: remove output_damage_view
      arrange: use int not size_t for title offsets
      fullscreen: init floating on disable without size
      detect_proprietary: use strncmp
      sway_view_child: add listener for view unmap
      get_deco_rect: fix floaters on tabbed/stacked ws
      Handle seat_get_focused_workspace returning NULL
      criteria: change workspace to support regex
      xwayland: handle floating configure request size
      Set prev_workspace_name based off of focus
      output_cmd_background: validate colors
      Fix output config retrieval for new outputs
      config/output: revamp identifier/name layering
      config/output: handle wildcard in get_output_config
      cmd_mode: allow cmd_set to be a subcommand
      criteria: fix __focused__ when no focus or unset
      fix opening a floating view on the NOOP output
      Implement inhibit_idle command
      Fix xwayland configure request scratchpad crash
      floating: fix size of non-view containers
      scratchpad: set initial size
      root_scratchpad_hide: fix crash when layer focused
      idle_inhibit: fix crash during view destruction
      swaybg: one instance for all outputs
      Honor output for xdg_toplevel_set_fullscreen
      cmd_focus: raise floating for `<criteria> focus`
      Fix scratchpad fullscreen behavior and crash
      swaynag: fix pointer management
      Spawn swaynag as a wayland client
      swaymsg: add timeout and type checks
      cmd_move: allow for all i3 syntax options
      ipc: fix criteria for emitting bar_state_update
      swaynag: revamp type configs
      swaybar: hide mode visibility improvements
      swaybar: add multiseat support
      cmd_move: respect workspace layout when inserting
      cmd_move: add support for output current
      sway.5.scd: clarify workspace config commands
      swaymsg: fix quiet error reporting
      Destroy swaybg client on reload
      config/output: fix typo in merge_id_on_name
      input/keyboard: attempt default keymap on failure
      commands/bar: fix mode and hidden_state at runtime
      input/switch: fix indentation of file
      common/ipc-client: remove ipc recv timeout log

Caleb Bassi (1):
      ipc: add missing fields to disabled outputs

Carlo Abelli (1):
      fix smart_borders description in manual

Connor E (7):
      If validating the config, do it as early as possible.
      Initialize server so input manager is available.
      Return false if config could not be loaded.
      Restore CWD if returning early.
      Make load_include_configs void. Fix some cases where WD would not be restored.
      Allow 0 degree transform (normal transform).
      Add deprecation warnings for new_float, new_window, and force_focus_wrapping.

Dacheng Gao (6):
      add chinese translation
      fix cs
      fix cs
      add link to README-zh-CN
      fix typo
      fix broken link to README.zh-CN.md

Daniel Eklöf (1):
      ipc_has_event_listeners: fix inverted check of subscribed_events

Dmitri Kourennyi (3):
      Implement handling of short_text field of i3 input protocol.
      Ensure predicted position for short text handling doesn't overflow.
      Add margin to short_text handling.

Drew DeVault (11):
      Revert "Restore CWD if returning early."
      Revert "Return false if config could not be loaded."
      Remove refs to unimplemented debuglog command
      Add workspace {prev,next}_on_output --create
      swaybar: process hotspots on touch tap
      swaybar: cycle workspaces on touch drag
      Update language in sway.desktop & sway(1)
      Update formatting of zh-cn link in README.md
      Remove obsolete README translations
      swaybg: split into standalone project
      Bump required wlroots version

Eric Drechsel (1):
      layout cmd: always operate on parent container, like i3Fixes #3724

Flakebi (1):
      Flush stdout in swaymsg when in subscribe mode

Geoff Greer (1):
      Add support for manually setting subpixel hinting on outputs.

Ian Fan (9):
      swaybar: prevent signal handler from firing during termination
      tray: use correct parameter to set bus slot to floating
      tray: when a service is lost, remove all matching items
      tray: fix memory leaks
      tray: fix pixmap colors
      stringop.c: remove unused functions
      stringop.c: clean up headers
      stringop.c: refactor a few functions
      commands: allow tiled sticky containers to be moved

Igor Sviatniy (1):
      Update README.uk.md

Ilja Kocken (1):
      Add link to i3 in first mention of README

Jan Beich (1):
      config/output: unbreak on 32-bit architectures

Jan Pokorný (1):
      bindings: fix overwrite log argument mismatch

Jeff Peele...
Read more

sway 1.1-rc3

21 May 14:19
Compare
Choose a tag to compare
sway 1.1-rc3 Pre-release
Pre-release
This is the third release candidate for sway 1.1. Only changes from sway
1.1-rc2 are listed here.

Alyssa Ross (1):
      bar: fix segfault with missing or invalid bar id

Brian Ashworth (1):
      input/keyboard: attempt default keymap on failure

sway 1.1-rc2

11 May 17:38
Compare
Choose a tag to compare
sway 1.1-rc2 Pre-release
Pre-release
This is the second release candidate for sway 1.1. Only changes from
sway 1.1-rc1 are listed here.

Brian Ashworth (2):
      Destroy swaybg client on reload
      config/output: fix typo in merge_id_on_name

Simon Ser (1):
      Fix xdg-decoration unconfigured if set before first commit