aboutsummaryrefslogtreecommitdiff
path: root/sway/tree/workspace.c
diff options
context:
space:
mode:
authorRyan Dwyer <RyanDwyer@users.noreply.github.com>2018-08-17 10:04:03 +1000
committerGitHub <noreply@github.com>2018-08-17 10:04:03 +1000
commit32193c7e4def7c0ba9cf8a7fcff02b1840d2b279 (patch)
tree83f8edec1482673a1ac26b02ea4bfcde014fed99 /sway/tree/workspace.c
parent98ed05225e06618533fa0439fdc83463cb9f1d2e (diff)
parenta9433cbded6249936047e580e98e113432925e49 (diff)
downloadsway-32193c7e4def7c0ba9cf8a7fcff02b1840d2b279.tar.xz
Merge pull request #2465 from DonnieWest/master
Default to the previous workspace if the current one has no focused windows
Diffstat (limited to 'sway/tree/workspace.c')
-rw-r--r--sway/tree/workspace.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sway/tree/workspace.c b/sway/tree/workspace.c
index cd2a7a04..e7383de0 100644
--- a/sway/tree/workspace.c
+++ b/sway/tree/workspace.c
@@ -258,7 +258,8 @@ struct sway_container *workspace_by_name(const char *name) {
struct sway_container *current_workspace = NULL, *current_output = NULL;
struct sway_container *focus = seat_get_focus(seat);
if (focus) {
- current_workspace = container_parent(focus, C_WORKSPACE);
+ current_workspace = focus->type == C_WORKSPACE ?
+ focus : container_parent(focus, C_WORKSPACE);
current_output = container_parent(focus, C_OUTPUT);
}