aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Update version to 1.41.4v1.3Libravatar Drew DeVault2020-01-22
|
* fish-completion: use the correct fallback directoryLibravatar Eli Schwartz2020-01-22
| | | | | | | | | fish completions should never be installed to share/fish/completions/ as that directory is reserved exclusively for completions shipped as part of the fish source code. Use the same vendor_completions.d/ directory which the default fish configuration uses.
* completion: use pkg-config to get install location for bash/fishLibravatar Eli Schwartz2020-01-22
| | | | | Both shells provide pkg-config files which declare their designated completionsdir. Use this as the primary source of truth.
* meson: use join_paths to build paths, instead of string concatLibravatar Eli Schwartz2020-01-22
| | | | | It makes sure to handle paths as paths, and is generally safer and the blessed solution.
* Check argc>0 before strcasecmp. Should shortcircuitLibravatar Jason Nader2020-01-22
|
* commands/move: Fix crash when required args not providedLibravatar Jason Nader2020-01-22
| | | | Fixes #4919.
* output: apply oc to outputs using wl_for_each_safeLibravatar Brian Ashworth2020-01-22
| | | | | | If applying an output config to an output fails, the output may be destroyed. To be able to handle this situation correctly, apply_output_config_to_outputs needs to use wl_list_for_each_safe.
* cmd_split: Refuse to split scratchpad hidden split containersLibravatar Ronan Pigott2020-01-22
|
* cmd_move: Fix crash when moving to scratchpad hidden split containersLibravatar Ronan Pigott2020-01-22
|
* Fix crash when showing scratchpad hidden split containersLibravatar Ronan Pigott2020-01-22
|
* desktop/output: fix mem leak in handle_new_outputLibravatar Brian Ashworth2020-01-22
| | | | | | This fixes a memory leak of oc (the output config) in handle_new_output. Output configs returned from find_output_config are not stored and need to be freed after use.
* sway.5: Document missing bindsym flags for unbindsymLibravatar Ronan Pigott2020-01-22
| | | | sway.5: Remove indents within long command descriptions
* sway-input.5: Document repeat_delay and repeat_rate only onceLibravatar Ronan Pigott2020-01-22
|
* ipc-json: Remove unnecessary dereferenceLibravatar Ronan Pigott2020-01-22
|
* commands/split: Fix error message typosLibravatar Ronan Pigott2020-01-22
|
* Revert "Make all the container dimensions integers"1.3-rc3Libravatar Simon Ser2020-01-15
| | | | | | This reverts commit 79c5f5ba1245a8c3d575770419a6501447e78919. Fixes: https://github.com/swaywm/sway/issues/4908
* container: add inactive fullscreen to focus stackLibravatar Brian Ashworth2020-01-15
| | | | | | | | | | | | When a container was being made fullscreen and it is on the focused workspace for a seat, focus was being set to the container. However, when the container was on a non-focused workspace, the focus stack wasn't being touched. When assigning a fullscreen container to a workspace or moving a fullscreen container to a different workspace, this would make it so the fullscreen container was never added to the focus stack for the workspace thus preventing access to the workspace. This adds the container to the top of the focus stack, behind the container on the focused workspace.
* Docs: explain why menu command should be passed to swayLibravatar Jason2020-01-15
| | | | It was not obvious to me why until I saw a comment from @RyanDwyer on Reddit, so I think it's better to add an explanation.
* Fix unreliable scaling filterLibravatar Simon Ser2020-01-15
| | | | | | | | | | | | | Two changes were made: - Bind the texture before glTexParameteri - Set the scaling filter before each wlr_render_texture_with_matrix call Logging in wlroots allows to check that the scaling filter is properly set prior to rendering. Fixes: 6968fb3123e6 ("add scale_filter output config option") Closes: https://github.com/swaywm/sway/issues/4798
* Amend typoLibravatar Jason Nader2020-01-15
|
* integer scaling, not integralLibravatar Cassandra McCarthy2020-01-15
|
* Use transparency arg in the window focus eventLibravatar JR Boyens2020-01-15
|
* view: remove workspace pid mapping for assignsLibravatar Brian Ashworth2020-01-15
| | | | | | If a view is mapped to a workspace using an assign, the pid should still be removed from the pid mapping list. This prevents child processes from matching against it and mapping a view to a likely undesired workspace.
* input/cursor: handle setting a NULL image surface1.3-rc2Libravatar Brian Ashworth2020-01-08
| | | | | | This fixes a crash when attempting to listen to a signal on a NULL cursor image surface. If the surface is NULL, the listener is just reinitialized using wl_list_init.
* input/cursor: handle image surface destroyLibravatar Brian Ashworth2020-01-08
| | | | | | This adds a listener for the destroy event of the cursor image surface. This prevents a use-after-free when the last visible image surface is freed, there has not been a new cursor set, and the cursor is reshown.
* swaybar: Fix input device removalLibravatar Andri Yngvason2020-01-08
| | | | | Before swaybar would exit with a protocol error when a pointer or touch device was removed.
* Fix small typo in sway-input(5)Libravatar Ross Schulman2020-01-08
|
* Add missing items to documentation for GET_TREE response in ipc.Libravatar Thayne McCombs2020-01-08
| | | | | A few items in the response for the get_tree ipc call were missing from the documentation. This adds some documentation for them.
* xwayland: handle size_hints == NULLLibravatar Rouven Czerwinski2020-01-08
| | | | | | | | In case xcb-iccm is not installed on the system, size_hints will be null. Handle this as if the get_constraints functions was not implemented and return the defaults. Fixes #4870
* input: Assign virtual input devices to their selected seatsLibravatar Andri Yngvason2020-01-08
|
* Make all the container dimensions integersLibravatar Pedro Côrte-Real2020-01-08
| | | | | | | | | | | | | Containers are always fixed to the pixel grid so position and size them with integers instead of doubles. Functionally this should be no different since rounding down is already being done on things like layout. But it makes it clear what the intention is and avoids bugs where fractional pixels are used. The translating and moving code is still using doubles because the cursors can have fractional pixels and thus the code is plumbed that way. But that could also probably be changed easily by doing the integer conversions earlier and plumbing with int.
* Make sure we don't calculate fractional pixel gapsLibravatar Pedro Côrte-Real2020-01-08
| | | | | | When gaps are resized for lack of space the calculation could result in a gap size of non-integer pixels. This would result in containers located at non-integer pixels which would be subtly broken.
* Avoid numerical instability in resizeLibravatar Pedro Côrte-Real2020-01-08
| | | | | | | | | | | | | | | | | | | Because the layout code rounds down the dimensions of the windows resizing would often be off by one pixel. The width/height fraction would not exactly reflect the final computed width and so the resize code would end up calculating things wrong. To fix this first snap the container size fractions to the pixel grid and only then do the resize. Also use round() instead of floor() during layout to avoid a slightly too small width. This applies in two cases: 1. For the container we are actually resizing using floor() might result in being 1px too small. 2. For the other containers it might result in resizing them down by 1px and then if the container being resized is the last all those extra pixels would make the resize too large. Fixes #4391
* Update version to 1.3-rc11.3-rc1Libravatar Drew DeVault2019-12-31
|
* _incr_version: always overwrite old version numberLibravatar Drew DeVault2019-12-31
|
* _incr_version: prompt for target wlroots releaseLibravatar Drew DeVault2019-12-31
|
* Add virtual pointer protocolLibravatar Josef Gajdusek2019-12-31
|
* Fix sway_log using non initialised output_config pointerLibravatar Paul Riou2019-12-31
| | | | | This fixes a crash where the `oc->name` would be accessed by sway_log() even when `oc` was NULL.
* Re-add support for wlr_output's atomic APILibravatar Simon Ser2019-12-30
| | | | | | | | | | | | | This reverts commit 724926ea6ae119956dc7b1e39c2e30c1e3657676 and re-applies commit 6e0565e9de4247bbf0ca662565c58e0a54258d6e. Outputs now need to be explicitly enabled when performing a modeset. We need to roll back wlr_output_attach_render when we decide not to render. See also: https://github.com/swaywm/wlroots/pull/1797 (wlroots PR) See also: https://github.com/swaywm/sway/pull/4355 (Original sway PR) See also: https://github.com/swaywm/sway/pull/4434 (Revert sway PR)
* Add Chinese (zh-TW) translation of READMELibravatar NightFeather2019-12-30
| | | Co-authored-by: xdavidwu <xdavidwuph@gmail.com>
* cmd_client_*: support optional args for i3 compatLibravatar Brian Ashworth2019-12-29
| | | | | | For i3 compatibility, allow the indicator and child_border colors values to be optional. The indicator will fallback to sane defaults and child_border will fallback to the background color for the class.
* Fix typo in swaybar-protocol.7.scdLibravatar Whemoon Jang2019-12-28
|
* bar_cmd_colors: remove add_colorLibravatar Brian Ashworth2019-12-28
| | | | | | | | | | | | This is the third commit in a series of commits to refactor color handling in sway. This removes add_color from commands.c. It was only being used by bar_cmd_colors. This also changes the functions to use parse_color which is used to validate rgb(a) colors throughout the code base and is also what i3bar is using to parse the colors after they are passed over ipc. After parsing the color and ensuring it is valid, the rgba hex string is then generated using snprintf. This refactor also ensures that all the colors for the command are valid before applying any of them.
* cmd_client_*: refactor duplicated codeLibravatar Brian Ashworth2019-12-28
| | | | | | | | | | | | | This is the second in a series of commits to refactor the color handling in sway. This removes the duplicated color parsing code in sway/commands/client.c. Additionally, this combines the parsing of colors to float arrays with that in sway/config.c and introduces a color_to_rgba function in commom/util.c. As an added bonus, this also makes it so non of the colors in a border color class will be changed unless all of the colors specified are valid. This ensures that an invalid command does not get partially applied.
* parse_color: return success + drop fallback colorLibravatar Brian Ashworth2019-12-28
| | | | | | | | | | | | This is the first in a series of commits to refactor the color handling in sway. This changes parse_color to return whether it was success and no longer uses 0xFFFFFFFF as the fallback color. This also verifies that the string actually contains a valid hexadecimal number along with the length checks. In the process of altering the calls to parse_color, I also took the opportunity to heavily refactor swaybar's ipc_parse_colors function. This allowed for several lines of duplicated code to be removed.
* layer-shell: refocus if keyboard interactive lostLibravatar Brian Ashworth2019-12-27
| | | | | | | | When arranging layer-shell layers, verify that the currently focused layer, if any, for each seat is still keyboard interactive. If the layer is no longer keyboard interactive and there is not a keyboard interactive overlay or top layer to change the focus to, refocus the focus inactive node for the seat.
* config/output: apply scale_filter even when scale has not changedLibravatar Ronan Pigott2019-12-27
|
* desktop/surface: Fix crash when timer is NULLLibravatar Manuel Stoeckl2019-12-24
| | | | | | | | | | | | | When many surfaces are created, sway can run out of file descriptors, making wl_event_loop_add_timer (which creates a timerfd) fail and return NULL. This patch posts a "no memory" error when that is the case, and only removes the timer if it was created. (Why "no memory"? It is not easy to distinguish between failures due to running out of memory and failures due to running out of file descriptors. Also, using the newer `wl_client_post_implementation_error` function would lead to an increased version requirement for the libwayland-server dependency.)
* License wallpapers as CC-0Libravatar Drew DeVault2019-12-16
|
* seat_cmd_keyboard_grouping: change keymap to smartLibravatar Brian Ashworth2019-12-16
| | | | | | | | | | This removes `seat <seat> keyboard_grouping keymap` and replaces it with `seat <seat> keyboard_grouping smart`. The smart keyboard grouping will group based on both the keymap and repeat info. The reasoning for this is that deciding what the repeat info should be for a group is either arbitrary or non-deterministic when multiple keyboards in the group have repeat info configured (unless somehow exposed to the user in a reproducible uniquely identifiable fashion).