aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Terminate swaybg in output_disableLibravatar Brian Ashworth2018-12-19
| | | | | | | | Moves the call to `terminate_swaybg` from inside `apply_output_config` to `output_disable`. The former was only called when an output was being disabled. The latter is called when an output is being disabled and when an output becomes disconnected. Without this, disconnecting an enabled output would result in a defunct swaybg process.
* Return success when renaming a workspace to itselfLibravatar Ryan Dwyer2018-12-18
|
* Merge pull request #3308 from RedSoxFan/fix-titlebar-clickLibravatar Drew DeVault2018-12-17
|\ | | | | Focus node before tiling drag if on titlebar
| * Focus node before tiling drag if on titlebarLibravatar Brian Ashworth2018-12-17
|/ | | | | Before attempting to drag a tiling container by its titlebar, focus it. This fixes clicking on titlebars to focus a container.
* Merge pull request #3305 from emersion/isue-template-stack-traceLibravatar Brian Ashworth2018-12-17
|\ | | | | issue template: add instructions for stack traces
| * issue template: add instructions for stack tracesLibravatar emersion2018-12-17
|/
* cmd_split: add null checks in do_splitLibravatar Brian Ashworth2018-12-17
| | | | Fixes a crash when running `split` commands with the workspace focused.
* Allow output ids and wildcard for workspace outputLibravatar Brian Ashworth2018-12-17
| | | | | | | | | This allows for output identifiers and to be used in the `workspace <workspace> output <outputs...>` command. Previously, only output names would be allowed. If an output identifier was given, it would never match an output. This also allows for the wildcard character (`*`) to be specified, which can be used to generate a list of workspace names that should be used when generating new workspaces
* swaynag: remove double free of details buttonLibravatar Brian Ashworth2018-12-17
| | | | | | | | | | | | | | If there are no arguments or invalid arguments given, swaynag will free `swaynag.details.button_details` under the `cleanup` label in main. It then called `swaynag_destroy`, which would attempt to free it again. Since `swaynag.details.button_details` is either freed on line 106 of main (when there is no detailed message) or added to `swaynag.buttons` on line 103 of main, there is no reason to manually free it in `swaynag_destroy`. Although I cannot reproduce a double free on my system, for some reason, it should have actually resulted in a double free in all code paths.
* Allow tiling views to be dragged by the titlebarLibravatar Brian Ashworth2018-12-17
| | | | | | Enables titling views to be dragged by the titlebar. This is in addition to using the modifier and dragging them from anywhere on the container surface. Floating views already allow this behavior.
* Update for swaywm/wlroots#1377Libravatar Rostislav Pehlivanov2018-12-16
| | | | -Werror is eͫ̐ͭ҉vi͆ͦ̏ͦlͥ̀͒̊͂͛
* swaynag: damage the cursor surface on updateLibravatar Brian Ashworth2018-12-15
| | | | | | | When the cursor surface gets updated, it should be damaged. This also bumps up `wl_compositor` to version 4 to be able to use `wl_surface_damage_buffer`.
* swaybar: fix cursor scaleLibravatar Brian Ashworth2018-12-15
| | | | | | | | | | | | This fixes a few issues with swaybar's cursor scaling: 1. The cursor scale is now changed when the output scale changes 2. The cursor scale is no longer bound by the max output scale when swaybar is launched 3. Related to the previous item, the cursor is no longer tiny on low scale outputs after the max output scale has changed This also bumps up `wl_compositor` to version 4 to allow usage of `wl_surface_damage_buffer`.
* Merge pull request #3291 from RedSoxFan/fix-focus-nonvisLibravatar Ryan Dwyer2018-12-15
|\ | | | | Fix focusing on non-visible workspace
| * Fix focusing on non-visible workspaceLibravatar Brian Ashworth2018-12-14
|/ | | | | | My previous attempt was not quite right. Changing the focus stack on a non-visible workspace should only be blocked if the focus would be set to the workspace itself
* Rework default output configsLibravatar Brian Ashworth2018-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | Default output configs were generated on reload to reset an output to its default settings. The idea was that anything that was removed from the config or changed at runtime and not in the config should be reset on reload. Originally, they were created using the output name. Recently, they were changed to use the output identifier. It turns out that there are issues of shadowing with that solution as well. This should fix those issues. Instead of generating the default output configs on reload and storing them in the output config list to merge on top of, they are now only generated when retrieving the output config for an output during a reload. This means that the default output configs are never stored anywhere and just used as a base to merge unaltered user configs on top of during a reload. Starting with a blank output config, merges get applied in the following order: 1. Default output config (only during a reload) 2. Wildcard config (only if neither output name or output identifier exist) 3. Output name config 4. Output identifier config
* Fix criteria execution in view_mapLibravatar mwenzkowski2018-12-12
| | | | | | | | | This patch moves view_execute_criteria(view) below the fullscreen code. Previously, if a view requested to be started in fullscreen, this was done after execution of criteria and hence it was impossible to disable fullscreen via criteria. Fixes #3285
* swaybar: fix sep block width for mixed scalesLibravatar Brian Ashworth2018-12-12
| | | | | | | | | | | | | When there are outputs with mixed scales, it was possible for swaybar to alter `block->separator_block_width` for an output with a higher scale, and use the changed value for a lower scale output. This caused there to be larger than normal separation between blocks on the lower scale outputs. The issue is more obvious the larger the scale difference between the highest scale output and the lowest scale output. This fixes the issue by using a local variable that is originally set to `block->separator_block_width` for rendering, but if it needs to be increased, the local variable is the only thing touched.
* swaybar: handle block->urgentLibravatar Brian Ashworth2018-12-12
| | | | | | | When `block->urgent` is set, use the urgent colors. This matches i3bar's behavior. Previously, swaybar just ignored the property. This also adds in rendering for right borders, which was missing.
* Keep focus when destroying containers on nonvis wsLibravatar Brian Ashworth2018-12-12
| | | | | | | | | | | | | | | | Changing the focus stack when destroying a container's node on a non-visible workspace (on an non-focused output) incorrectly causes the non-visible workspace to become visible. If the workspace is empty, it will not be destroyed since it is now visible. Additionally since there was no workspace::focus event, swaybar still shows the previous workspace as focus-inactive. It also makes no sense to change visible workspaces due to a container on a non-visible workspace being destroyed. Since the focus will either be set when switching to the non-visible workspace or the workspace will be destroyed due to being empty, there is no need to change the focus stack when destroying a container on a non-visible workspace.
* Call wlr_output_enable for disabled new outputsLibravatar Brian Ashworth2018-12-10
| | | | | | When a new output is detected and it is disabled by the output config, call `wlr_output_enable(output->wlr_output, false)` to DPMS off the output.
* Merge pull request #3271 from ianyfan/list-cleanupLibravatar Ryan Dwyer2018-12-09
|\ | | | | list.c: Remove list_foreach
| * list.c: rename free_flat_list to list_free_items_and_destroyLibravatar Ian Fan2018-12-09
| |
| * Cleanup list codeLibravatar Ian Fan2018-12-09
| |
| * list.c: Remove list_foreachLibravatar Ian Fan2018-12-09
| | | | | | | | | | Most occurrences have been replaced by `free_flat_list` which has been moved from stringop.c to list.c. The rest have been replaced by for loops.
* | Merge pull request #3264 from ianyfan/resize-listLibravatar Brian Ashworth2018-12-08
|\ \ | |/ |/| list: double list capacity when resizing instead of incrementing
| * list: double list capacity when resizing instead of incrementingLibravatar Ian Fan2018-12-06
| | | | | | | | | | This is the industry standard since it allows insertion to be amortized O(1) time.
* | Merge pull request #3260 from RedSoxFan/split-flattenLibravatar Ryan Dwyer2018-12-08
|\ \ | |/ |/| cmd_split: flatten when possible
| * cmd_split: flatten when possibleLibravatar Brian Ashworth2018-12-05
|/
* Fix command list executionLibravatar mwenzkowski2018-12-05
| | | | | | | | | Determine the container/workspace a command is run on, each time when a command of the command list will be run. Previously the container/workspace was determined only once at the beginning of command list execution, which led to wrong behaviour because commands wouldn't take into account when a previous command changed the focused container.
* Merge pull request #3252 from hvenev/swaybar-relLibravatar Brian Ashworth2018-12-04
|\ | | | | Add relative coordinates in JSON for i3bar click events
| * Add relative coordinates in JSON for i3bar click eventsLibravatar Hristo Venev2018-12-04
|/ | | | Compatibility with i3 commit 161db6f17d734ac9deb0a20e81b78d4b2a92ce68.
* config: do not set $XDG_CONFIG_HOME if unset or emptyLibravatar Ian Fan2018-12-03
| | | | Instead redefine the config paths to use the default $HOME/.config
* config: set $XDG_CONFIG_HOME if emptyLibravatar Ian Fan2018-12-03
| | | | | Before, it was only set if it was not set, but it should also be done when empty.
* Fix identifier output configs on reloadLibravatar Brian Ashworth2018-12-03
| | | | | | | | | | | | | | | | | | | | | | When generating default output configs to reset the outputs to their default settings on reload, the output name was being used. Additionally when determining the output config to apply, if there was an output config with the output name, that was being used without checking for an identifier config. This caused sway to completely ignore the users specified output config. To fix this issue, the following changes have been made: 1. Default output configs as created for the identifier now instead of name. This actually makes more sense anyway since you could hotplug multiple different outputs to the same port. 2. In get_output_config, which is only used to determine which output config to apply, output configs for both the name and identifier are queried. If both are found, a new output config is generated with the identifier config merged on top of the name config. If just one is found, a copy of that config is returned. This change also requires that the result from get_output_config be freed after use to prevent memory leaks, which required some minor changes to logic in apply_output_config_to_outputs.
* cmd_focus: show scratchpad if hiddenLibravatar Brian Ashworth2018-12-03
| | | | | | | If a scratchpad container is hidden, it is still focusable using criteria and should be shown. This fixes a segfault when attempting to rebase the cursor since previously the scratchpad container would not be on any output.
* Merge pull request #3239 from ForTheReallys/bindsym-no-warnLibravatar Brian Ashworth2018-12-02
|\ | | | | Add option to bindsym/bindcode to suppress warning on override
| * Add option to bindsym/bindcode to suppress warning on overrideLibravatar Alex Maese2018-12-02
|/
* fix typoLibravatar bschacht2018-12-02
| | | tranform -> transform
* fix typoLibravatar bschacht2018-12-02
| | | bahavior -> behavior
* Merge pull request #3227 from emersion/swap-buffers-damage-coordsLibravatar Drew DeVault2018-12-02
|\ | | | | Update for swaywm/wlroots#1403
| * Update for swaywm/wlroots#1403Libravatar emersion2018-12-01
| |
* | Merge pull request #3228 from ianyfan/swayidleLibravatar emersion2018-12-02
|\ \ | | | | | | meson.build: remove obsolete definition of swayidle_deps
| * | meson.build: remove obsolete definition of swayidle_depsLibravatar Ian Fan2018-12-01
| |/
* | Merge pull request #3229 from mwenzkowski/fix-fullscreen-cmdLibravatar Brian Ashworth2018-12-01
|\ \ | |/ |/| Fix fullscreen command and improve documentation
| * sway.5: Improve documentationLibravatar mwenzkowski2018-11-30
| | | | | | | | Document the optional arguments of the fullscreen command.
| * Fix the error result of the fullscreen commandLibravatar mwenzkowski2018-11-29
| | | | | | | | | | | | Changes the error result from CMD_INVALID to CMD_FAILURE, since CMD_INVALID indicates an unknown command or parser error and neither occurs where CMD_INVALID was used.
* | Merge pull request #3226 from CameronNemo/muslLibravatar emersion2018-12-01
|\ \ | |/ |/| swaylock: fix build with musl libc
| * swaylock: fix build with musl libcLibravatar Cameron Nemo2018-11-30
|/ | | | Signed-off-by: Cameron Nemo <camerontnorman@gmail.com>
* Merge pull request #3219 from RedSoxFan/swaymsg-object-success1.0-beta.2Libravatar emersion2018-11-29
|\ | | | | swaymsg: parse success of single object