diff options
Diffstat (limited to 'sway/tree/workspace.c')
-rw-r--r-- | sway/tree/workspace.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sway/tree/workspace.c b/sway/tree/workspace.c index 9ba210fd..5eb4be0f 100644 --- a/sway/tree/workspace.c +++ b/sway/tree/workspace.c | |||
@@ -425,11 +425,14 @@ bool workspace_switch(struct sway_container *workspace) { | |||
425 | } | 425 | } |
426 | seat_set_focus(seat, next); | 426 | seat_set_focus(seat, next); |
427 | struct sway_container *output = container_parent(workspace, C_OUTPUT); | 427 | struct sway_container *output = container_parent(workspace, C_OUTPUT); |
428 | arrange_output(output); | 428 | arrange_and_commit(output); |
429 | return true; | 429 | return true; |
430 | } | 430 | } |
431 | 431 | ||
432 | bool workspace_is_visible(struct sway_container *ws) { | 432 | bool workspace_is_visible(struct sway_container *ws) { |
433 | if (ws->destroying) { | ||
434 | return false; | ||
435 | } | ||
433 | struct sway_container *output = container_parent(ws, C_OUTPUT); | 436 | struct sway_container *output = container_parent(ws, C_OUTPUT); |
434 | struct sway_seat *seat = input_manager_current_seat(input_manager); | 437 | struct sway_seat *seat = input_manager_current_seat(input_manager); |
435 | struct sway_container *focus = seat_get_focus_inactive(seat, output); | 438 | struct sway_container *focus = seat_get_focus_inactive(seat, output); |