aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
* Fix a use-after-free error in switch bindingLibravatar Di Ma2020-04-14
|
* Implement create_output command for headless backendLibravatar Simon Ser2020-04-14
|
* input: keyboard: Never group virtual keyboards.Libravatar Andri Yngvason2020-04-14
| | | | This fixes #5134
* input: Mark virtual devices as suchLibravatar Andri Yngvason2020-04-14
| | | | This is for internal configuration purposes
* add dots to manLibravatar roshal2020-04-14
|
* Use bitshifts for bitfieldsLibravatar Simon Ser2020-04-10
| | | | | | | | Instead of hardcoded power of 2 values, use bitshifts. This makes the enums more readable, avoids mistakes, and makes it clear how much of the int32_t bit space we have left. While at it, fix other minor style issues.
* Adjust focus order to match rendering order of layer shell popups.Libravatar Aleksei Bavshin2020-04-10
|
* Render layer shell popups over the top layerLibravatar David962020-04-10
|
* output: remove damage listeners in damage destroyLibravatar Rouven Czerwinski2020-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of removing the destroy listeners in the output destroy, remove them in the damage destroy handler. Fixes the following use after free: ==646625==ERROR: AddressSanitizer: heap-use-after-free on address 0x61200017cab8 at pc 0x0000004f8f29 bp 0x7ffdf465ad30 sp 0x7ffdf465ad20 WRITE of size 8 at 0x61200017cab8 thread T0 #0 0x4f8f28 in wl_list_remove ../common/list.c:181 #1 0x43dd24 in handle_destroy ../sway/desktop/output.c:790 (`wl_list_remove(&output->damage_destroy.link);` here, 214e3030e1dce master branch) #2 0x7f0e573a1c93 in wlr_signal_emit_safe ../util/signal.c:29 #3 0x7f0e57390954 in wlr_output_destroy ../types/wlr_output.c:365 #4 0x7f0e5735e37f in backend_destroy ../backend/x11/backend.c:128 #5 0x7f0e57348147 in wlr_backend_destroy ../backend/backend.c:47 #6 0x7f0e57356f75 in multi_backend_destroy ../backend/multi/backend.c:54 #7 0x7f0e5735710e in handle_display_destroy ../backend/multi/backend.c:107 #8 0x7f0e573f23e4 in wl_display_destroy (/lib64/libwayland-server.so.0+0x93e4) #9 0x42f0b2 in server_fini ../sway/server.c:177 #10 0x42dd01 in main ../sway/main.c:414 #11 0x7f0e570f7041 in __libc_start_main (/lib64/libc.so.6+0x27041) #12 0x40e3bd in _start (/opt/wayland/bin/sway+0x40e3bd) 0x61200017cab8 is located 120 bytes inside of 320-byte region [0x61200017ca40,0x61200017cb80) freed by thread T0 here: #0 0x7f0e57aa9357 in __interceptor_free (/lib64/libasan.so.6+0xb0357) #1 0x7f0e5738b877 in wlr_output_damage_destroy ../types/wlr_output_damage.c:143 #2 0x7f0e5738b2b9 in output_handle_destroy ../types/wlr_output_damage.c:13 #3 0x7f0e573a1c93 in wlr_signal_emit_safe ../util/signal.c:29 #4 0x7f0e57390954 in wlr_output_destroy ../types/wlr_output.c:365 #5 0x7f0e5735e37f in backend_destroy ../backend/x11/backend.c:128 #6 0x7f0e57348147 in wlr_backend_destroy ../backend/backend.c:47 #7 0x7f0e57356f75 in multi_backend_destroy ../backend/multi/backend.c:54 #8 0x7f0e5735710e in handle_display_destroy ../backend/multi/backend.c:107 #9 0x7f0e573f23e4 in wl_display_destroy (/lib64/libwayland-server.so.0+0x93e4) previously allocated by thread T0 here: #0 0x7f0e57aa9887 in __interceptor_calloc (/lib64/libasan.so.6+0xb0887) #1 0x7f0e5738b532 in wlr_output_damage_create ../types/wlr_output_damage.c:91 #2 0x43e4a7 in handle_new_output ../sway/desktop/output.c:875 #3 0x7f0e573a1c93 in wlr_signal_emit_safe ../util/signal.c:29 #4 0x7f0e57357261 in new_output_reemit ../backend/multi/backend.c:143 #5 0x7f0e573a1c93 in wlr_signal_emit_safe ../util/signal.c:29 #6 0x7f0e5736030a in wlr_x11_output_create ../backend/x11/output.c:253 #7 0x7f0e5735e309 in backend_start ../backend/x11/backend.c:113 #8 0x7f0e573480fb in wlr_backend_start ../backend/backend.c:36 #9 0x7f0e57356e61 in multi_backend_start ../backend/multi/backend.c:31 #10 0x7f0e573480fb in wlr_backend_start ../backend/backend.c:36 #11 0x42f4ba in server_start ../sway/server.c:205 #12 0x42dbd7 in main ../sway/main.c:394 #13 0x7f0e570f7041 in __libc_start_main (/lib64/libc.so.6+0x27041) Fixes #5158
* Don't add disabled outputs back to output layoutLibravatar Simon Ser2020-04-09
| | | | | | | Return early from apply_output_config if the output is disabled. This restores our previous behavior [1]. [1]: https://github.com/swaywm/sway/commit/0cdcf66bbccfeb1e3a8191cedd5f824bb27776a6#diff-4f65f4327e987fef8ec3796cdb07644eL349
* Fix initial modesetLibravatar Simon Ser2020-04-09
| | | | | | | | | | | | An if branch takes care of the case where the output needs to be turned off (DPMS'ed or disabled). The other branch needs to unconditionally enable the output. output->current_mode is already taken care of in apply_config. Sorry about that, probably made a bad change by mistake after my DRM testing. Closes: https://github.com/swaywm/sway/issues/5193
* ci: remove epoll-shim hardcoded pkg-config fileLibravatar Simon Ser2020-04-08
| | | | The upstream package now provides one.
* ci: don't build scdocLibravatar Simon Ser2020-04-08
| | | | scodc is now available in all distributions we have CI for.
* Add test-only support to wlr-output-management-unstable-v1Libravatar Simon Ser2020-04-08
| | | | | Use the new test_output_config function to implement wlr-output-management-unstable-v1's test request.
* Introduce test_output_configLibravatar Simon Ser2020-04-08
| | | | | This function checks whether the backend would accept an output configuration, without applying the changes.
* Stop checking wlr_output_attach_buffer return valueLibravatar Simon Ser2020-04-08
| | | | | | Update for [1]. Everything is now checked at commit-time. [1]: https://github.com/swaywm/wlroots/pull/2097
* config: fix unfocused text colorLibravatar Thomas Hebb2020-04-04
| | | | | | This color, both in i3 and as described in sway(5), defaults to #888888. However, the actual default also has an alpha of 88 instead of FF, meaning it ends up significantly darker than intended.
* build: make completions respect install prefixesLibravatar Dominique Martinet2020-04-04
| | | | | | | | | Tell pkgconfig about prefix and datadir as required in the .pc files, so if the prefix isn't standard nothing is installed outside of it. For fish, this requires https://github.com/fish-shell/fish-shell/pull/6778 Fixes swaywm/swaybg#13
* im: Fix crash when im destorying and no focused surface existsLibravatar Leo2020-04-04
|
* im: remove listener on pending surface destoryedLibravatar xdavidwu2020-04-04
|
* im: make text-input listeners per text-inputLibravatar xdavidwu2020-04-04
|
* input-method: avoid and log unneeded set_focusLibravatar xdavidwu2020-04-04
|
* input-method: remove surface listener before setLibravatar xdavidwu2020-04-04
| | | | | This make sure pending focused surface listener is not reachable from old surface.
* Port input method and text input from rootstonLibravatar xdavidwu2020-04-04
| | | | | | | This ports swaywm/wlroots#1203, swaywm/wlroots#1303, swaywm/wlroots#1308, swaywm/wlroots#1759 rootston part to sway. Co-Authored-By: Leo Chen <leo881003@gmail.com>
* swapped hiding the cursor and sending a touch event as a more logical sequenceLibravatar Some Chinese Guy2020-04-03
|
* swaynag: exit on wl_display_roundtrip errorLibravatar Dominique Martinet2020-04-02
| | | | | fixes loop when sway closes the socket in the middle of querying outputs, see #5138.
* Reference wev instead of xevLibravatar Tobi Fuhrimann2020-04-02
|
* Update for new wlr_buffer APILibravatar Simon Ser2020-04-02
| | | | | | Update for [1]. [1]: https://github.com/swaywm/wlroots/pull/2044
* change apply_exclusive() to closer match layer shell protocolLibravatar Leon Plickat2020-03-30
| | | | | | | | | | | | With these changes, sway will respect positive exclusive zones of layer surfaces anchored to one or three sides. This matches the protocol, which states that a positive exclusive zone should be respected, "if the surface is anchored to one edge or an edge and both perpendicular edges". If the surfaces is "anchored to only two perpendicular edges (a corner), anchored to only two parallel edges or anchored to all edges a positive value will be treated the same as zero".
* tray: track SNI callbacksLibravatar Ian Fan2020-03-30
| | | | | | This removes any pending messages once the item is destroyed. Furthermore, this installs SNI event calbacks asynchronously in order to prevent sd-bus from bypassing pending messages.
* tray: tidy codeLibravatar Ian Fan2020-03-30
| | | | This includes some refactoring and fixing a small memory leak.
* tray: allow themes to inherit from multiple themesLibravatar Ian Fan2020-03-30
|
* tray: better errors when parsing index.themeLibravatar Ian Fan2020-03-30
|
* swaybar: fix memory leaksLibravatar Ian Fan2020-03-30
|
* add --no-repeat option for bindingsLibravatar Linus Heckemann2020-03-30
| | | | | | | | | This allows e.g. triggering one command while a key is held, then triggering another to undo the change performed by it afterwards. One use case for this is triggering push-to-talk functionality for VoIP tools without granting them full access to all input events. Fixes #3151
* Change focus_on_window_activation default to urgentLibravatar Simon Ser2020-03-29
| | | | | | | | | | Before the default was "smart". This means a visible app could steal focus whenever it wanted to. This can be an issue since having focus allows for e.g. clipboard access. This commit changes the default to "urgent" instead. Closes: https://github.com/swaywm/sway/issues/5139
* switched to setting focus with seat_set_focusLibravatar Some Chinese Guy2020-03-29
|
* Added focus following for touch_downLibravatar Some Chinese Guy2020-03-29
|
* swaynag: fix segfault on exit when arguments are not correctLibravatar Dominique Martinet2020-03-29
| | | | | swaynag_destroy is called on all cleanup cases and needs the lists to be valid, just init them early
* sway.5: fix missing background scaling mode in a block exampleLibravatar rinpatch2020-03-28
|
* Fix hit test for floaters that cross outputsLibravatar Josh Shone2020-03-27
| | | | In the case of multiple overlapping floating windows, this commit fixes an issue where the wrong window would be focused in response to a cursor if one of the windows came from a different output (overhanging).
* check for workspace command name argLibravatar r-c-f2020-03-24
| | | | | | | | | | | | | | | | | | * check for workspace command name arg (fix #5131) For the 'workspace <name> output <output>' command, output_location must be greater than zero or the attempt to get the workspace name with join_args will segfault or abort() (depending on the flavor of sway_assert() in use). This checks and returns an error instead. * put workspace output error string on one line To ease grepping as requested * check for name in workspace gaps command as well A malformed command here will lead to the same result seen in #5131, so add a check. Done inside the cmd_workspace_gaps() function itself, to take advantage of the existing 'Expected...' string.
* Fix redundant call to seat_send_focus()Libravatar Leo2020-03-23
| | | | | | This commit fix calling to seat_send_focus() twice when a view is closed. This codes revert #2580, but the original issue nolonger exists.
* Fix output mode usageLibravatar Simon Ser2020-03-21
| | | | The "Hz" part is required.
* sway/input/cursor.c: fix undefined behaviour when event is NULLLibravatar Jason Nader2020-03-16
|
* Document input selector precedenceLibravatar Dennis Schridde2020-03-15
| | | | Signed-off-by: Dennis Schridde <devurandom@gmx.net>
* sway/input/cursor.c: move NULL check to where it should beLibravatar Jason Nader2020-03-15
|
* commands/bind.c: remove unnecessary checkLibravatar Jason Nader2020-03-15
|
* Update fish completionsLibravatar Jason2020-03-13
| | | `--config` should autocomplete filepaths
* Limit workspace numbers within 0..INT32_MAXLibravatar Jason Nader2020-03-12
| | | | See https://github.com/i3/i3/commit/83c7aff089a6728b6e522d934d656a8e09463112