diff options
author | Ragnar Groot Koerkamp <ragnar.grootkoerkamp@gmail.com> | 2021-06-18 13:13:21 +0200 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2021-06-18 16:15:02 +0200 |
commit | d5c71231e5d17db9f33284f6c4f16aeb2e3ec2a6 (patch) | |
tree | 090844544be2b9e8cc0c1b918db04d1529ced4cb /sway/tree | |
parent | 3080f1b9ce069c0697291bd3ef23c38ae610fa8c (diff) |
Only call workspace_auto_back_and_forth when needed
Instead of disabling it for some workspace subcommands, this explicitly
calls it only in the 2 places it's actually needed: for switching to a
named or numbered workspace.
Diffstat (limited to 'sway/tree')
-rw-r--r-- | sway/tree/workspace.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/sway/tree/workspace.c b/sway/tree/workspace.c index 2dbd6346..7e98dc92 100644 --- a/sway/tree/workspace.c +++ b/sway/tree/workspace.c @@ -572,12 +572,13 @@ struct sway_workspace *workspace_auto_back_and_forth( active_ws = focus->sway_container->pending.workspace; } - if (config->auto_back_and_forth && active_ws && - active_ws == workspace && seat->prev_workspace_name) { + if (config->auto_back_and_forth && active_ws && active_ws == workspace && + seat->prev_workspace_name) { struct sway_workspace *new_ws = - workspace_by_name(seat->prev_workspace_name); - workspace = new_ws ? new_ws - : workspace_create(NULL, seat->prev_workspace_name); + workspace_by_name(seat->prev_workspace_name); + workspace = new_ws ? + new_ws : + workspace_create(NULL, seat->prev_workspace_name); } return workspace; } |