aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2026-02-01tree/workspace: fix crash on dragging container to workspace edgebandicootFurkan Sahin-0/+2
Problem: when dragging a parent container to the right of its children, sway crashes, the calculated insertion index could exceed the list bounds. The move logic would compute an index based on the pre-removal list state. Solution: Clamp the insertion index to [0, length].
2026-01-31bar_cmd_colors: fix crash on incorrect usageFurkan Sahin-0/+4
should display error message instead to be consistent with other subcommands.
2026-01-29sway: advertise color_manager_v1 version 2Furkan Sahin-1/+1
Ref: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5223
2026-01-14sway-ipc(7): Clarify that the reply shown is an exampleFurkan Sahin-1/+1
Fix documentation of sway-ipc. The example reply for GET_BINDIG_STATE is an example and not the exact reply. This bug seems to come from copy/paste from the ipc command SYNC directly above.
2026-01-06sway/input/cursor: fix crash on first stylus tap after reboot via null checkFurkan Sahin-0/+5
handle_tool_tip() previously used event->tool->data without checking for NULL. When launching sway for the first time after a reboot, and then tapping with a USI 2.0 stylus, the tool tip event is fired before the tool proximity event. As event->tool is initialized during the tool proximity handler handle_tool_proximity(), this was causing a crash. The fix adds a NULL check before accessing the fields of event->tool->data. In case of a NULL, a log message is emitted indicating that the tool tip event fired before proximity. This logic is identical to the logic in handle_tool_axis(). Fixes issue #8907
2026-01-04Disable Xwayland restacking for toplevel capture scenesFurkan Sahin-0/+1
The main scene should drive Xwayland restacking. References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5108
2026-01-06Use goto-based error handling in view_init()Furkan Sahin-9/+10
This is less surprising than checking for the failed flag in the happy path.
2026-01-05sway/input/seat: chase wlroots breaking changeFurkan Sahin-2/+2
Ref: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5230
2025-12-05sway/commands/output: add color_profile "--device-primaries"Furkan Sahin-13/+88
When a display is connected, create a color transform from its self-reported color characteristics
2025-11-01sway/commands/output: color_profile "srgb" applies the piece-wise TFFurkan Sahin-4/+13
Document that "gamma22" replaced the previous default.
2025-10-30sway/config: apply output CT before initial commitFurkan Sahin-12/+39
Currently, config apply sets the output's image description before the initial commit, but sets the output's color transform after the commit. In the case of a config reload removing a color profile and enabling HDR, both the color transform and image description will be set, which trips an assert in wlroots
2025-12-21desktop/xdg_shell: skip configure in request_maximize handler if unmappedFurkan Sahin-0/+3
wlr_xdg_surface_schedule_configure() requires the xdg_surface to be initialized. Mirror the early return from request_fullscreen.
2025-12-18tiling_resize: fix use-after-free on view unmap during resizeFurkan Sahin-4/+1
Closing a tiled window (mod+shift+q) while resizing (mod+click) causes an use-after-free in handle_unref. Both conditions can be true in this case, which will result in dereferencing `e` on the second check after it has already been freed by the first `seatop_begin_default`. Fix by combining separate checks for the main container and its horizontal/vertical siblings into a single condition. The second check was added in 4957a35dc8d5b0e597d5f87132df2d2985becf48 and I've checked that this fix does not regress that issue.
2025-10-04Use helpers to get supported TFs/primariesFurkan Sahin-13/+10
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5086
2025-11-27Drop org_kde_kwin_idle filesFurkan Sahin-50/+0
Has been replaced by ext_idle_notifier_v1 Signed-off-by: rewine <luhongxu@deepin.org>
2025-11-17commit dirty transactions upon window attribute changesFurkan Sahin-0/+7
2025-11-20tree/view: check for null workspace outputFurkan Sahin-1/+1
Fixes #8950
2025-11-20swaynag/main: free config_pathFurkan Sahin-0/+1
Otherwise config_path is never free'd
2025-11-13sway/server: advertise wlr_color_representation_manager_v1Furkan Sahin-0/+4
2025-10-29sway/server: advertise gamma2.2 and bt1886 transfer functionsFurkan Sahin-0/+2
2025-10-18sway/commands/layout: fix flatten parent onceinput-fix_context_menu_focusFurkan Sahin-4/+8
Fixes: c63e5f6c3b82 ("sway/commands/layout: flatten parent once")
2025-09-29sway/input/cursor: send frame event when simulating pointer from tabletFurkan Sahin-0/+1
2025-10-02commands/scratchpad: don't hide scratchpad if no pending workspaceFurkan Sahin-3/+1
Fixes: https://github.com/swaywm/sway/issues/8909
2025-10-02build: switch to explicit 'meson setup' syntaxFurkan Sahin-34/+34
2025-09-21sway/server: set color_manager for root sceneFurkan Sahin-1/+3
Chase https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5122/
2025-09-15README: update German translationFurkan Sahin-12/+25
Update the information about display manager support (see #8861), as well as markdown formatting of links and change some wording in the German README.
2025-09-11input/text_input: stop using listener dataFurkan Sahin-17/+11
These are now NULL. Fixes: d86ac50b0dbc ("input/text_input: chase wlroots update") Closes: https://github.com/swaywm/sway/issues/8864 References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5107
2025-09-14Update README.it.md for Italian Furkan Sahin-4/+3
Updated italian readme to follow the recent changes to the English one. I also removed "gestore di accesso" which in theory translates to display manager, but in practice is never used in this context. Other wikis such as [Debian](https://wiki.debian.org/it/DisplayManager) and [Ubuntu](https://wiki.ubuntu-it.org/AmbienteGrafico/DisplayManager) just use the term "Display Manager" as is. Another small thing that I corrected is "canale di IRC" which sounds a bit weird.
2025-09-12Add Serbian READMEFurkan Sahin-1/+67
2025-09-12Update Norwegian README to make it more in line with the English one, as ↵Furkan Sahin-27/+24
well as improving grammar
2025-09-12readme: sync Japanese translationFurkan Sahin-2/+1
2025-09-12readme: sync Russian translationFurkan Sahin-2/+1
2025-09-11readme: Update and reword Czech translationFurkan Sahin-13/+13
2025-09-11readme: Update Polish translation regarding the support of display managersFurkan Sahin-2/+1
2025-09-11update danish readme to reflect that display managers are supportedFurkan Sahin-2/+1
2025-09-09readme: mark display managers as supportedFurkan Sahin-6/+3
It's been a long while since we've heard about issues related to display managers. Some used to be unreliable in the past, but by now most issues have been ironed out. Let's start supporting them officially. I've considered translating other languages but I'm concerned about messing up the sentence. I've updated languages I'm comfortable with.
2025-09-09xdg-shell: fix reported WM capabilitiesFurkan Sahin-1/+1
Previously it was reporting window_menu and maximize instead of fullscreen because wlr_xdg_toplevel_set_wm_capabilities expects a bitmask (WLR_XDG_TOPLEVEL_WM_CAPABILITIES_*), and XDG_TOPLEVEL_WM_CAPABILITIES_* are supposed to be used as values in wl_array, so the values are different: XDG_TOPLEVEL_WM_CAPABILITIES_FULLSCREEN = 3 WLR_XDG_TOPLEVEL_WM_CAPABILITIES_FULLSCREEN = 4
2025-09-08input/text_input: chase wlroots updateFurkan Sahin-1/+1
References:https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5107
2025-08-22config/output: Only error when enabling HDRFurkan Sahin-1/+1
We currently emit errors about HDR support even if HDR is not being requested, which mean errors on every regular modeset when monitors not supporting HDR are connected. Only emit errors when attempting to enable HDR on such device.
2025-08-13Stop generating wayland-protocols server headersFurkan Sahin-9/+0
We still need to generate wlr-protocols server headers, as well as client headers and code. References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/5075
2025-07-25Add wl_fixes interfaceFurkan Sahin-0/+2
2022-02-03commands/resize: make resize consider all siblingsFurkan Sahin-56/+47
Fixes a compatibility issue with i3 where resizing works as described hereafter: > Direction can either be one of up, down, left or right. Or you can be > less specific and use width or height, in which case i3 will take/give > space from all the other containers. Sway previously considered only the direct neighbours, not all siblings. Fixes #5936
2025-08-03sway/commands/layout: flatten parent onceFurkan Sahin-0/+9
Applying layout changes to the parent of the parent, in case the parent only has a single child, stops the creation of a chain of single child containers. Closes: https://github.com/swaywm/sway/issues/7945
2025-06-21Add cursor->hidden check to handle_rebaseFurkan Sahin-1/+1
Fixes #6245
2025-07-31tree/node: Do not mark destroying nodes as dirtyFurkan Sahin-4/+4
Node destruction currently runs through the transaction system such that a particular node is only destroyed after its use in an ongoing transaction. If a node is dirtied after the node is marked as destroying but before it is destroyed, the pointer added to dirty_nodes would become a dangling pointer once the node was destroyed. Do not dirty destroying nodes, and ensure that destroying is only set after the last dirty.
2025-07-09Revert drag_lock default to disabledFurkan Sahin-8/+0
I misunderstood the recommendation in the libinput release notes. Instead of making enabled_sticky the default, leave the default set to disabled. Fixes: 276b9a91d3d2 ("Add support for LIBINPUT_CONFIG_DRAG_LOCK_ENABLED_STICKY") Closes: https://github.com/swaywm/sway/issues/8758
2025-07-20tree/view: save new wlr_scene_buffer fieldsFurkan Sahin-0/+4
Visble flicker can occur during transactions, if these are not copied to the 'saved' scene
2025-07-10Add xdg_toplevel tag to criteriaFurkan Sahin-1/+33
2025-07-10Add xdg_toplevel tag to IPCFurkan Sahin-0/+7
2025-07-10Wire up xdg-toplevel-tag-v1Furkan Sahin-1/+39