diff options
Diffstat (limited to 'sway/workspace.c')
-rw-r--r-- | sway/workspace.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sway/workspace.c b/sway/workspace.c index c169c1cb..b7e9760b 100644 --- a/sway/workspace.c +++ b/sway/workspace.c | |||
@@ -198,9 +198,9 @@ swayc_t *workspace_prev() { | |||
198 | return workspace_prev_next_impl(swayc_active_workspace(), false); | 198 | return workspace_prev_next_impl(swayc_active_workspace(), false); |
199 | } | 199 | } |
200 | 200 | ||
201 | void workspace_switch(swayc_t *workspace) { | 201 | bool workspace_switch(swayc_t *workspace) { |
202 | if (!workspace) { | 202 | if (!workspace) { |
203 | return; | 203 | return false; |
204 | } | 204 | } |
205 | swayc_t *active_ws = swayc_active_workspace(); | 205 | swayc_t *active_ws = swayc_active_workspace(); |
206 | if (config->auto_back_and_forth && active_ws == workspace && prev_workspace_name) { | 206 | if (config->auto_back_and_forth && active_ws == workspace && prev_workspace_name) { |
@@ -217,6 +217,9 @@ void workspace_switch(swayc_t *workspace) { | |||
217 | } | 217 | } |
218 | 218 | ||
219 | sway_log(L_DEBUG, "Switching to workspace %p:%s", workspace, workspace->name); | 219 | sway_log(L_DEBUG, "Switching to workspace %p:%s", workspace, workspace->name); |
220 | set_focused_container(get_focused_view(workspace)); | 220 | if (!set_focused_container(get_focused_view(workspace))) { |
221 | return false; | ||
222 | } | ||
221 | arrange_windows(workspace, -1, -1); | 223 | arrange_windows(workspace, -1, -1); |
224 | return true; | ||
222 | } | 225 | } |