CARVIEW |
Select Language
HTTP/2 200
date: Thu, 31 Jul 2025 00:18:44 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"4dfe9a463a6790c17a63178612a39115"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com wss://alive-staging.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=a5FRd0JvR985JFpjERLbfJt1PZJxFrPDVCTm30lU9Cu7ccQXBEbldfxMKhVXeHZ0rxaL4WOQq4xY%2F0Q2N%2BLD3U7hdTX2am9HYNU%2BilZFLXUMnaUnkaqpB4Ykvfte7ym35SgFqCjU55eGOoPXOzxgORiijaCTcu8e1LY%2FhxA9Qn4oM5Z4%2FUKOYTCWVkzMHoXbi2ivw1q1rzsZNY5z%2BcflRQMVjEsww5jVyCwsomtkBchW3Uso9R%2FDRlgrj1ijSZObqRuStIY6zBsSustVXzCOmA%3D%3D--hDsnA4ffpyrsVbTb--e%2FMsWTGT7l5Ls4HBR7n4jg%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.683328921.1753921123; Path=/; Domain=github.com; Expires=Fri, 31 Jul 2026 00:18:43 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Fri, 31 Jul 2026 00:18:43 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 8214:23875B:E837B:1601C9:688AB663
Releases Β· swaywm/sway Β· GitHub
08 Jun 21:12
emersion
Simon Ser
Read more
Loading
25 May 21:34
emersion
Simon Ser
Loading
18 May 21:58
emersion
Simon Ser
Loading
27 Apr 20:53
emersion
Simon Ser
Loading
20 Apr 11:37
emersion
Simon Ser
Read more
Loading
26 Jan 13:44
emersion
Simon Ser
Loading
27 Oct 20:49
emersion
Simon Ser
Read more
Loading
20 Oct 20:15
emersion
Simon Ser
Loading
13 Oct 16:01
emersion
Simon Ser
Loading
06 Oct 14:55
emersion
Simon Ser
Loading
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Releases: swaywm/sway
Releases Β· swaywm/sway
1.11
1.11
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
Sway 1.11 contains 189 changes from 53 contributors.
This release depends on wlroots 0.19.0. See the wlroots release notes.
New features
- All of the enhancements from wlroots 0.19.0.
- Add support for linux-drm-syncobj-v1 for explicit synchronization
- Add support for alpha-modifier-v1 for setting an alpha multiplier for a surface
- Add support for ext-image-copy-capture-v1 and ext-image-capture-source-v1 for improved screen capture
- Add support for ext-data-control-v1 as an alternative protocol for clipboard managers
- Improved output configuration logic for better and faster fallbacks
- Pointer keys are now supported and can be bound in keymaps to trigger pointer events
- security-context-v1 metadata is exposed in IPC, and can be used in criteria and title format
Changes
- The default configuration file now ships key bindings for a few utilities: pactl, brightnessctl, grim
- The default menu now uses wmenu-run and no longer depends on dmenu_path.
- The default tap-and-drag lock mode has been switched to sticky as recommended by upstream
- The
sway.desktop
file now setsDesktopNames
(XDG_CURRENT_DESKTOP
will be set by login managers)
Full changelog
Adam Chovanec (1):
readme: update Czech translation
Alexander Orzechowski (19):
transaction: Reparent all container children when disabling for scratchpad
xwayland: Let scene restack
output: Use wlr_scene_output_needs_frame
output: Use wlr_scene_set_gamma_control_manager_v1
output: Chase wlroots!4803
container: Skip % char if it doesn't match a view property
text_input: Check for allocation failure
text_input: Move popup placement to own function
transaction: Allow no popup descriptor in popup list
text_input: Properly handle map/unmap events
text_input: Inline input_popup_update into input_popup_set_focus
Fix alpha-modifier-v1
layer_shell: Arrange exclusive zone clients first
layer_shell: Restore sway 1.9 ordering
container: Properly constrain title bar padding
swaybar: Handle opaque region properly
output: Expose output_configure_scene to header
output: Allow configuring scene without an output
commands/opacity: Call output_configure_scene on updated container
Anna (navi) Figueiredo Gomes (1):
sway/commands/move.c: arrange new workspace
AsciiWolf (1):
Remove language bars from remaining non-English README files
Attila Fidan (1):
input/cursor: remove tool_proximity listener in destroy
BaltazΓ‘r Radics (1):
input/libinput: fix parsing input drag_lock command
Bill Li (4):
build: Bump wlroots version
Chase wlroots!2434
ci: use package x11-servers/xwayland instead of x11-servers/xwayland-devel
Drop wlr_matrix.h include from sway/desktop/output.c
Bonsaiiv (1):
Improve example of input section in default config
Chris Perl (1):
Remove constraint that con->view != NULL to use __focused__ criteria
Claudia (1):
Fix tabbed/stacking container height regression
Dan Baterisna (1):
man: Document bar mode toggle command
Daniel De Graaf (1):
Use wl_event_loop_add_signal for exit signals
Dennis Baurichter (1):
man: clarify criteria (incl. PCRE2 usage)
Emil Engberg (1):
Add toggle for output adaptive_sync
Felix Pehla (1):
commands/output/color_profile: allows use of relative path for ICC profile
Ferdinand Bachmann (7):
sway/ipc-json: add ext-foreign-toplevel-handle identifier to get_tree ipc output
server: remove event listeners on fini
input/input-manager: remove event listeners on fini
desktop/idle_inhibit: remove event listeners on destroy
input/text_input: remove event listeners on destroy
tree/container: remove event listeners on destroy
server: recreate renderer in idle callback to avoid UAF
Filip VujiΔiΔ (1):
Remove duplicate arrange_container
Furkan Sahin (6):
swaybar: Fix 100% cpu usage if dbus dies.
input/mouse: bugfix button2 being interpreted as trying to move the container
output/background: fix config ignoring fallback color
ipc: standardize pretty print with raw print
sway/commands: Handle incorrect resize unit
input/seatop_down: Update decorations for touchscreen inputs
GyΓΆrgy Kurucz (1):
input/libinput: fix builtin device detection logic
Hong Xu (1):
Explain that the title bar always shows
Jacob McNamee (3):
tree/view: add getters for sandbox properties
tree/container: support sandbox properties in title format
swaymsg: pretty-print sandbox properties
James Knight (1):
build: avoid git repository discovery when determining version
Jan Palus (1):
trigger container update after disabling urgent in timer
Jim (1):
Increase max default buffer size to 1 MiB
JingMatrix (1):
Add null-safety check for virtual keyboard keymaps
Joan Bruguera MicΓ³ (2):
layer-shell: Restore interactive layer focus code
swaybar: Emit property changes for SNI watcher
Jon Wallace (2):
Use heading markdown to demarcate sections of commands Its a little tought to notice that the COMMANDS section is actually 3 sections. Use markdown to make this easier to see for the user.
use subheadings instead
Kenny Levinsen (51):
desktop/output: Stop repaint loop when not needed
config/output: Do not set adaptive_sync if not supported
config/output: Skip search if config has a mode
desktop/output: Do not use commit listener to arrange
tree/output: Rely on modeset arranging root
(desktop|tree)/output: Do not use layout listener to arrange
desktop/output: Avoid duplicate output manager update
tree/output: Avoid duplicate input mapping configure
tree/arrange: Remove redundant output geometry update
desktop/transaction: Deactivate workspace on inactive outputs
tree/arrange; Skip arranging disabled outputs
config/output: Support multiple matches in find_output_config
config/output: Always start with default in find_output_config
config/output: Accept a list of output_configs to use
config/output: Rename to apply_stored_output_configs
ext-session-lock: Do not use commit listener to arrange
config/output: Add support for 6-bit render fmt
config/output: Stringify render format when logging it
commands/gaps: Check config->reading instead
desktop/output: Expose request_modeset
config: Batch input/output configuration on load
desktop/output: Clear modeset timer on output manager apply
Re-init renderer for all outputs on lost context
config/output: Improve modeset state logging
config/output: Always set output states from config
config/output: Always set all output fields on finalize
config/output: Remove initial values in find_output_config
config/output: Remove remaining logs from queue_output_config
desktop/output: Store output config on request_state
desktop/output: Add missing output config allocation checks
config/output: Update output position in two passes
desktop/output: Clean up output state if build_state fails
desktop/output: Clear frame_pending even output is disabled
config: Force modeset before running deferred configs
ipc-server: Force modeset if needed after executing commands
desktop/output: Clear repaint timer earlier in destroy
sway_text_node: Apply max_width when rendering
sway_text_node: Remove use of source box
Rework fork/exec strategy
Use SIG_IGN for SIGCHLD instead of our own handler
config/output: Reset everything before swaybg exec
desktop/output: Skip repaint if wlr_output is disabled
Avoid crashing on too many containers
idle_inhibit: Ignore inhibitors when locked
idle_inhibit: Explicitly handle layer surfaces
idle_inhibit: Assume view is invisible by default
idle_inhibit: Check if layer surface output is enabled
config/output: Use INT_MAX as x/y unset value
config/output: Fix missing output config supersedes
output: Minimize interaction with output after destroy
tree/workspace: Remove exclude arg from get_highest_available
Kirill Primak (5):
xwayland: chase wlr_xwayland_surface_set_maximized() change
tearing: remove trailing whitespace
tearing: fix UAF on destroy
xdg-shell: chase xdg_surface geometry updates
desktop/output: chase wlroots private fields update
Loukas Agorgianitis (1):
server: fix shutdown crash when running on x11 backend
Manuel Stoeckl (1):
swaynag: fix null dereference on scale change
Mark Stosberg (1):
docs: use "window" instead of "view" throughout.
Norbert Bolanowski (1):
move title_format to container
Olivia Taliesin (1):
Removed destination-is-ancestor check from container_move_to_container to match i3 behaviour
Paul Riou (1):
stringop: fix has_prefix() arg order in config parsing
Pavel 'LEdoian' Turinsky (1):
Fix includes with relative paths
Piotr PiwoΕski (1):
sway/commands: Return error if container is not in scratchpad
Puck Meerburg (2):
ipc-json: add sandbox properties to view JSON
criteria: add sandbox properties
Ricardo Steijn (1):
Add support for tearing-control-v1
Scott Dubinsky (1):
Remove unguarded double include
ShootingStarDragons (2):
f...
Assets 4
103 people reacted
1.11-rc4
1.11-rc4
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.11-rc4 Bonsaiiv (1): Improve example of input section in default config Kenny Levinsen (2): output: Minimize interaction with output after destroy tree/workspace: Remove exclude arg from get_highest_available Simon Ser (4): ci: pin wlroots to 0.19.x input: fix udev_device leak Log message on for_window command error build: bump version to 1.11-rc4 alex-huff (4): transaction: fix size of child container decorations in stacking layouts transaction: reparent scenes of containers behind fullscreen containers layer-shell: reclaim space from unmapped layer surfaces transaction: fix floating fullscreen containers
Assets 4
19 people reacted
1.11-rc3
1.11-rc3
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.11-rc3 Furkan Sahin (1): input/seatop_down: Update decorations for touchscreen inputs Kenny Levinsen (2): config/output: Use INT_MAX as x/y unset value config/output: Fix missing output config supersedes Pavel 'LEdoian' Turinsky (1): Fix includes with relative paths Simon Ser (1): build: bump version to 1.11-rc3 alex-huff (3): transaction: Ensure all tabs are visible in tabbed mode move: fix broken titlebar when moving child to new workspace transaction: ensure border scene is enabled for floating containers odyxz (1): raise scratchpad container
Assets 4
17 people reacted
1.11-rc2
1.11-rc2
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.11-rc2 Furkan Sahin (1): sway/commands: Handle incorrect resize unit Simon Ser (3): Use pthread_atfork() to restore signals and NOFILE limit Replace signal() with sigaction() build: bump version to 1.11-rc2
Assets 4
23 people reacted
1.11-rc1
1.11-rc1
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
Sway 1.11-rc1 contains 163 changes from 48 contributors.
This release depends on wlroots 0.19.0-rc1. See the wlroots release notes.
New features
- All of the enhancements from wlroots 0.19.0-rc1.
- Add support for linux-drm-syncobj-v1 for explicit synchronization
- Add support for alpha-modifier-v1 for setting an alpha multiplier for a surface
- Add support for ext-image-copy-capture-v1 and ext-image-capture-source-v1 for improved screen capture
- Add support for ext-data-control-v1 as an alternative protocol for clipboard managers
- Improved output configuration logic for better and faster fallbacks
- Pointer keys are now supported and can be bound in keymaps to trigger pointer events
- security-context-v1 metadata is exposed in IPC, and can be used in criteria and title format
Changes
- The default configuration file now ships key bindings for a few utilities: pactl, brightnessctl, grim
- The default menu now uses wmenu-run and no longer depends on dmenu_path.
- The default tap-and-drag lock mode has been switched to sticky as recommended by upstream
- The
sway.desktop
file now setsDesktopNames
(XDG_CURRENT_DESKTOP
will be set by login managers)
Full changelog
Adam Chovanec (1):
readme: update Czech translation
Alexander Orzechowski (19):
transaction: Reparent all container children when disabling for scratchpad
xwayland: Let scene restack
output: Use wlr_scene_output_needs_frame
output: Use wlr_scene_set_gamma_control_manager_v1
output: Chase wlroots!4803
container: Skip % char if it doesn't match a view property
text_input: Check for allocation failure
text_input: Move popup placement to own function
transaction: Allow no popup descriptor in popup list
text_input: Properly handle map/unmap events
text_input: Inline input_popup_update into input_popup_set_focus
Fix alpha-modifier-v1
layer_shell: Arrange exclusive zone clients first
layer_shell: Restore sway 1.9 ordering
container: Properly constrain title bar padding
swaybar: Handle opaque region properly
output: Expose output_configure_scene to header
output: Allow configuring scene without an output
commands/opacity: Call output_configure_scene on updated container
Anna (navi) Figueiredo Gomes (1):
sway/commands/move.c: arrange new workspace
AsciiWolf (1):
Remove language bars from remaining non-English README files
Attila Fidan (1):
input/cursor: remove tool_proximity listener in destroy
BaltazΓ‘r Radics (1):
input/libinput: fix parsing input drag_lock command
Bill Li (4):
build: Bump wlroots version
Chase wlroots!2434
ci: use package x11-servers/xwayland instead of x11-servers/xwayland-devel
Drop wlr_matrix.h include from sway/desktop/output.c
Chris Perl (1):
Remove constraint that con->view != NULL to use __focused__ criteria
Claudia (1):
Fix tabbed/stacking container height regression
Dan Baterisna (1):
man: Document bar mode toggle command
Daniel De Graaf (1):
Use wl_event_loop_add_signal for exit signals
Dennis Baurichter (1):
man: clarify criteria (incl. PCRE2 usage)
Emil Engberg (1):
Add toggle for output adaptive_sync
Felix Pehla (1):
commands/output/color_profile: allows use of relative path for ICC profile
Ferdinand Bachmann (7):
sway/ipc-json: add ext-foreign-toplevel-handle identifier to get_tree ipc output
server: remove event listeners on fini
input/input-manager: remove event listeners on fini
desktop/idle_inhibit: remove event listeners on destroy
input/text_input: remove event listeners on destroy
tree/container: remove event listeners on destroy
server: recreate renderer in idle callback to avoid UAF
Filip VujiΔiΔ (1):
Remove duplicate arrange_container
Furkan Sahin (4):
swaybar: Fix 100% cpu usage if dbus dies.
input/mouse: bugfix button2 being interpreted as trying to move the container
output/background: fix config ignoring fallback color
ipc: standardize pretty print with raw print
GyΓΆrgy Kurucz (1):
input/libinput: fix builtin device detection logic
Hong Xu (1):
Explain that the title bar always shows
Jacob McNamee (3):
tree/view: add getters for sandbox properties
tree/container: support sandbox properties in title format
swaymsg: pretty-print sandbox properties
James Knight (1):
build: avoid git repository discovery when determining version
Jan Palus (1):
trigger container update after disabling urgent in timer
Jim (1):
Increase max default buffer size to 1 MiB
JingMatrix (1):
Add null-safety check for virtual keyboard keymaps
Joan Bruguera MicΓ³ (2):
layer-shell: Restore interactive layer focus code
swaybar: Emit property changes for SNI watcher
Jon Wallace (2):
Use heading markdown to demarcate sections of commands Its a little tought to notice that the COMMANDS section is actually 3 sections. Use markdown to make this easier to see for the user.
use subheadings instead
Kenny Levinsen (47):
desktop/output: Stop repaint loop when not needed
config/output: Do not set adaptive_sync if not supported
config/output: Skip search if config has a mode
desktop/output: Do not use commit listener to arrange
tree/output: Rely on modeset arranging root
(desktop|tree)/output: Do not use layout listener to arrange
desktop/output: Avoid duplicate output manager update
tree/output: Avoid duplicate input mapping configure
tree/arrange: Remove redundant output geometry update
desktop/transaction: Deactivate workspace on inactive outputs
tree/arrange; Skip arranging disabled outputs
config/output: Support multiple matches in find_output_config
config/output: Always start with default in find_output_config
config/output: Accept a list of output_configs to use
config/output: Rename to apply_stored_output_configs
ext-session-lock: Do not use commit listener to arrange
config/output: Add support for 6-bit render fmt
config/output: Stringify render format when logging it
commands/gaps: Check config->reading instead
desktop/output: Expose request_modeset
config: Batch input/output configuration on load
desktop/output: Clear modeset timer on output manager apply
Re-init renderer for all outputs on lost context
config/output: Improve modeset state logging
config/output: Always set output states from config
config/output: Always set all output fields on finalize
config/output: Remove initial values in find_output_config
config/output: Remove remaining logs from queue_output_config
desktop/output: Store output config on request_state
desktop/output: Add missing output config allocation checks
config/output: Update output position in two passes
desktop/output: Clean up output state if build_state fails
desktop/output: Clear frame_pending even output is disabled
config: Force modeset before running deferred configs
ipc-server: Force modeset if needed after executing commands
desktop/output: Clear repaint timer earlier in destroy
sway_text_node: Apply max_width when rendering
sway_text_node: Remove use of source box
Rework fork/exec strategy
Use SIG_IGN for SIGCHLD instead of our own handler
config/output: Reset everything before swaybg exec
desktop/output: Skip repaint if wlr_output is disabled
Avoid crashing on too many containers
idle_inhibit: Ignore inhibitors when locked
idle_inhibit: Explicitly handle layer surfaces
idle_inhibit: Assume view is invisible by default
idle_inhibit: Check if layer surface output is enabled
Kirill Primak (5):
xwayland: chase wlr_xwayland_surface_set_maximized() change
tearing: remove trailing whitespace
tearing: fix UAF on destroy
xdg-shell: chase xdg_surface geometry updates
desktop/output: chase wlroots private fields update
Loukas Agorgianitis (1):
server: fix shutdown crash when running on x11 backend
Manuel Stoeckl (1):
swaynag: fix null dereference on scale change
Mark Stosberg (1):
docs: use "window" instead of "view" throughout.
Norbert Bolanowski (1):
move title_format to container
Olivia Taliesin (1):
Removed destination-is-ancestor check from container_move_to_container to match i3 behaviour
Paul Riou (1):
stringop: fix has_prefix() arg order in config parsing
Piotr PiwoΕski (1):
sway/commands: Return error if container is not in scratchpad
Puck Meerburg (2):
ipc-json: add sandbox properties to view JSON
criteria: add sandbox properties
Ricardo Steijn (1):
Add support for tearing-control-v1
Scott Dubinsky (1):
Remove unguarded double include
ShootingStarDragons (2):
fix: sway crashes if switch to another workspace with surface when IME popup is shown
text_input: Fix ime panic in ext-session-lock
Simon Ser (23):
build: use fs.relative_to() instead of hand-rolled logic
desktop/xwayland: don't restack when marking window as inactive
Add support for linux-drm-syncobj-v1
Bind a few utilities to special keys in default config
Switch default config to wmenu-run
Add support for alpha-modifier-v1
re...
Assets 4
37 people reacted
1.10.1
1.10.1
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.10.1 Alexander Orzechowski (2): container: Properly constrain title bar padding swaybar: Handle opaque region properly GyΓΆrgy Kurucz (1): input/libinput: fix builtin device detection logic Hong Xu (1): Explain that the title bar always shows Joan Bruguera MicΓ³ (1): swaybar: Emit property changes for SNI watcher Kenny Levinsen (8): desktop/output: Store output config on request_state desktop/output: Add missing output config allocation checks config/output: Update output position in two passes desktop/output: Clean up output state if build_state fails desktop/output: Clear frame_pending even output is disabled config: Force modeset before running deferred configs ipc-server: Force modeset if needed after executing commands desktop/output: Clear repaint timer earlier in destroy Manuel Stoeckl (1): swaynag: fix null dereference on scale change Simon Ser (4): release.sh: read meson-rewrite output from stdout ipc-json: handle LIBINPUT_CONFIG_DRAG_LOCK_ENABLED_STICKY config/output: don't hardcode DMA-BUF in search_render_format() build: bump version to 1.10.1 llyyr (2): layer_shell: cleanup new_popup listener when destroying node config/output: don't leak background_fallback mtvare6 (2): desktop/transaction: clamp vertical border length to 0 config/output: skip format checks if all are supported
Assets 4
63 people reacted
1.10
1.10
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
Sway 1.10 contains 237 changes from 44 contributors.
This release depends on wlroots 0.18.0. See the wlroots release notes.
New features
- All of the enhancements from wlroots 0.18.
- Rewrite the renderer to leverage the wlroots scene-graph API, resulting in improved performance.
- Add GPU reset recovery for improved robustness.
- Add a command to use an ICC profile for an output.
- Improved output configuration algorithm to light up more outputs when the GPU bandwidth is constrained.
WLR_DRM_NO_MODIFIERS
shouldn't be necessary anymore to workaround black screens on Intel. - Add support for IME popups used for CJK.
- Add support for tearing-control-v1, to opt-in for tearing page-flips for gaming use-cases.
- Add support for ext-transient-seat-v1, allowing remoting apps such as wayvnc to create separate temporary seats for input events.
- Add support for ext-foreign-toplevel-list-v1, the new standard protocol to obtain information about other toplevels. This will eventually be used by taskbars, window switchers and per-toplevel screen capture.
- Add support for xdg-shell v5 with popup repositioning and hiding maximize/minimize buttons in CSD.
Changes
dmenu_run
is no longer a dependency of the default config file.- The default config file now contains keybindings with
pactl
for volume adjustment,brightnessctl
for brightness adjustment andgrim
for screenshots. - The legacy
wl_drm
protocol is now disabled by default (superseded by the standard linux-dmabuf-v1 protocol). This causes breakage in xorg-xwayland < 24.1.0, libva < 2.22.0 and amdvlk < 2024.Q4.1, and can be re-enabled manually via-Dlegacy-wl-drm
. - The
xwayland
built-time option has been removed: Xwayland support is now enabled at build-time if it was enabled for wlroots.
Full changelog
Access (1):
text_input: Implement input-method popups
Adam Chovanec (1):
readme: update Czech translation
Aleksei Bavshin (1):
xdg-activation: distinguish activation and urgency requests
Alexander Orzechowski (47):
Don't destroy output layout on exit
output: Destroy when output layout is destroyed
desktop: Rename layers to shell_layers
view: init function should return a success bool
scene_graph: Maintain `wlr_scene_node`s for the sway tree.
scene_graph: Use built-in linux dmabuf feedback handling
scene_graph: Introduce sway_scene_descriptor
renderer: Render scene_graph
scene_graph: Port seat drag icons
scene_graph: Port seatop_move_tiling indicators
scene_graph: Port ext_session_v1
seat: Remove dead seatop_render function
renderer: Remove in favor of scene_graph
Introduce sway_text_node
input: Query scene graph for relevant surface/node intersections
scene_graph: Port layer_shell
scene_graph: Port container server side decorations
transaction: ready signals will return success bools
scene_graph: Port xdg_shell
scene_graph: Port xwayland
xwayland: Cleanup geometry handling on commit
scene_graph: Port view saved buffers
Delete old damage tracking code
container: Don't track outputs
scene_graph: Arrange scene graph on transaction apply
scene_graph: Port opacity and filter modes
scene_graph: Implement toplevel clipping
Fix SIGSEGV on surface destroy
remove damage debug options
scene_graph: port wlr_forgein_toplevel_management output enter/leave events
layer_shell: Fix typo of return instead of continue
Ensure get_text_width() returns a positive value
layer_shell: Arrange popups even if exclusive zone doesn't change
xdg_shell: Extract struct for popup descriptor
layer_shell: Handle popups through popup descriptor
Force bilinear scaling when scaling down
sway_text_node: Allow 0 text width
transaction: Reparent all container children when disabling for scratchpad
container: Skip % char if it doesn't match a view property
text_input: Check for allocation failure
text_input: Move popup placement to own function
transaction: Allow no popup descriptor in popup list
text_input: Properly handle map/unmap events
text_input: Inline input_popup_update into input_popup_set_focus
Fix alpha-modifier-v1
layer_shell: Arrange exclusive zone clients first
layer_shell: Restore sway 1.9 ordering
Andri Yngvason (1):
Implement transient seat management
Anna (navi) Figueiredo Gomes (2):
sway/config/output.c: fix null deref on output config
sway/commands/move.c: arrange new workspace
Bill Li (2):
Chase wlroots!4482
ci: use package x11-servers/xwayland instead of x11-servers/xwayland-devel
Billli11 (1):
Remove wlr_presentation in sway_server struct
Daniel De Graaf (1):
Fix SIGSEGV on output destroy
Daniel Kahn Gillmor (1):
sway-ipc(7): Escape backslashes correctly in GET_CONFIG output
Emil Engberg (1):
Add toggle for output adaptive_sync
Felix Pehla (1):
commands/output/color_profile: allows use of relative path for ICC profile
Ferdinand Bachmann (2):
man: document supported modifier names
input: add Super as alternative for Mod4
Furkan Sahin (2):
swaybar: Fix 100% cpu usage if dbus dies.
input/mouse: bugfix button2 being interpreted as trying to move the container
James Knight (1):
build: avoid git repository discovery when determining version
Jan Palus (1):
trigger container update after disabling urgent in timer
JingMatrix (1):
Add null-safety check for virtual keyboard keymaps
Joan Bruguera MicΓ³ (1):
layer-shell: Restore interactive layer focus code
Jon Wallace (2):
Use heading markdown to demarcate sections of commands Its a little tought to notice that the COMMANDS section is actually 3 sections. Use markdown to make this easier to see for the user.
use subheadings instead
Kenny Levinsen (47):
config/output: Split apply_output_config
config/output: Introduce apply_output_configs
output/config: Add apply_all_output_configs
Use apply_all_output_configs to light up outputs
desktop/output: Use apply_output_configs for output mgmt
config/output: Remove apply_output_config
output/config: Remove reset_outputs and co.
config/output: Make merge_output_config static
output/config: Remove unused test_output_config
commands/output/toggle: Use free_output_config
config/output: Refactor handling of tiered configs
server: Use wlr_renderer_get_texture_formats
desktop/output: Fix check if config should be stored
config/output: Use all outputs for config merge
config/output: Search for output config fallbacks
config/output: Print output state during tests
config/output: Skip VRR tests when not supported
desktop/output: Debounce modesets
common/pango: Disable glyph position rounding
desktop/output: Stop repaint loop when not needed
config/output: Do not set adaptive_sync if not supported
config/output: Skip search if config has a mode
desktop/transaction: Deactivate workspace on inactive outputs
config/output: Add support for 6-bit render fmt
config/output: Stringify render format when logging it
desktop/output: Do not use commit listener to arrange
tree/output: Rely on modeset arranging root
(desktop|tree)/output: Do not use layout listener to arrange
desktop/output: Avoid duplicate output manager update
tree/output: Avoid duplicate input mapping configure
tree/arrange: Remove redundant output geometry update
tree/arrange; Skip arranging disabled outputs
config/output: Support multiple matches in find_output_config
config/output: Always start with default in find_output_config
config/output: Accept a list of output_configs to use
config/output: Rename to apply_stored_output_configs
ext-session-lock: Do not use commit listener to arrange
commands/gaps: Check config->reading instead
desktop/output: Expose request_modeset
config: Batch input/output configuration on load
desktop/output: Clear modeset timer on output manager apply
Re-init renderer for all outputs on lost context
config/output: Improve modeset state logging
config/output: Always set output states from config
config/output: Always set all output fields on finalize
config/output: Remove initial values in find_output_config
config/output: Remove remaining logs from queue_output_config
Kirill Primak (10):
xdg-shell: chase events update
layer-shell: don't try to unmap on destroy
layer-shell: wait for an initial commit before configuring
layer-shell: don't configure uninitialized surfaces
Chase wlroots!4003
Chase wlroots!4443
view: drop ext_foreign_destroy
protocols: use tablet-v2 xml from stable/
tearing: remove trailing whitespace
tearing: fix UAF on destroy
Luofan Chen (1):
input: Rename WLR_INPUT_DEVICE_TABLET_TOOL to WLR_INPUT_DEVICE_TABLET
Manuel Stoeckl (5):
common: Drop unused render_background_image
common: rename load_background_image to load_image
common: move load_image to swaybar
desktop/layer_shell: provide fractional scale on creation
sway/commands/output: Add command to set color profile
Merlin Lex (1):
ext-foreign-toplevel-list: Implement protocol
Norbert Bolanowski (1):
move title_format to container
Olivia...
Assets 4
154 people reacted
1.10-rc4
1.10-rc4
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.10-rc4 Alexander Orzechowski (2): layer_shell: Arrange exclusive zone clients first layer_shell: Restore sway 1.9 ordering Jan Palus (1): trigger container update after disabling urgent in timer Kenny Levinsen (5): config/output: Improve modeset state logging config/output: Always set output states from config config/output: Always set all output fields on finalize config/output: Remove initial values in find_output_config config/output: Remove remaining logs from queue_output_config Simon Ser (1): build: bump version to 1.10-rc4
Assets 4
26 people reacted
1.10-rc3
1.10-rc3
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.10-rc3 Furkan Sahin (1): input/mouse: bugfix button2 being interpreted as trying to move the container ShootingStarDragons (1): fix: sway crashes if switch to another workspace with surface when IME popup is shown Simon Ser (1): build: bump version to 1.10-rc3
Assets 4
57 people reacted
1.10-rc2
1.10-rc2
This tag was signed with the committerβs verified signature.
The key has expired.
Compare
sway 1.10-rc2 Alexander Orzechowski (1): Fix alpha-modifier-v1 Kenny Levinsen (1): Re-init renderer for all outputs on lost context Simon Ser (2): release: push tags before creating GitHub release build: bump version to 1.10-rc2
Assets 4
36 people reacted
Previous Next
You canβt perform that action at this time.