diff options
author | Drew DeVault <sir@cmpwn.com> | 2016-08-04 15:36:29 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-04 15:36:29 -0400 |
commit | f773eb96a80d3da63a99cb3def43db6d0a0cf4d5 (patch) | |
tree | 41c02c9ba8c37ec4a0d8353931852efd1104ab8c | |
parent | Merge pull request #831 from progandy/fix_colors (diff) | |
parent | Fix 'workspace back_and_forth' and workspace_auto_back_and_forth clash (diff) | |
download | sway-f773eb96a80d3da63a99cb3def43db6d0a0cf4d5.tar.gz sway-f773eb96a80d3da63a99cb3def43db6d0a0cf4d5.tar.zst sway-f773eb96a80d3da63a99cb3def43db6d0a0cf4d5.zip |
Merge pull request #832 from thejan2009/bug/workspace-back-and-forth
Fix 'workspace back_and_forth' and workspace_auto_back_and_forth clash
-rw-r--r-- | sway/commands.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sway/commands.c b/sway/commands.c index f73bd21c..172f9f34 100644 --- a/sway/commands.c +++ b/sway/commands.c | |||
@@ -2563,10 +2563,13 @@ static struct cmd_results *cmd_workspace(int argc, char **argv) { | |||
2563 | } else if (strcasecmp(argv[0], "prev_on_output") == 0) { | 2563 | } else if (strcasecmp(argv[0], "prev_on_output") == 0) { |
2564 | ws = workspace_output_prev(); | 2564 | ws = workspace_output_prev(); |
2565 | } else if (strcasecmp(argv[0], "back_and_forth") == 0) { | 2565 | } else if (strcasecmp(argv[0], "back_and_forth") == 0) { |
2566 | if (prev_workspace_name) { | 2566 | // if auto_back_and_forth is enabled, workspace_switch will swap |
2567 | if (!(ws = workspace_by_name(prev_workspace_name))) { | 2567 | // the workspaces. If we created prev_workspace here, workspace_switch |
2568 | ws = workspace_create(prev_workspace_name); | 2568 | // would put us back on original workspace. |
2569 | } | 2569 | if (config->auto_back_and_forth) { |
2570 | ws = swayc_active_workspace(); | ||
2571 | } else if (prev_workspace_name && !(ws = workspace_by_name(prev_workspace_name))) { | ||
2572 | ws = workspace_create(prev_workspace_name); | ||
2570 | } | 2573 | } |
2571 | } else { | 2574 | } else { |
2572 | if (!(ws = workspace_by_name(argv[0]))) { | 2575 | if (!(ws = workspace_by_name(argv[0]))) { |