diff options
Diffstat (limited to 'sway/desktop/output.c')
-rw-r--r-- | sway/desktop/output.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c index 0d706c52..c4265818 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c | |||
@@ -229,9 +229,12 @@ static void render_output(struct sway_output *output, struct timespec *when, | |||
229 | struct sway_seat *seat = input_manager_current_seat(input_manager); | 229 | struct sway_seat *seat = input_manager_current_seat(input_manager); |
230 | struct sway_container *focus = | 230 | struct sway_container *focus = |
231 | sway_seat_get_focus_inactive(seat, output->swayc); | 231 | sway_seat_get_focus_inactive(seat, output->swayc); |
232 | struct sway_container *workspace = (focus->type == C_WORKSPACE ? | 232 | if (!focus) { |
233 | focus : | 233 | // We've never been to this output before |
234 | container_parent(focus, C_WORKSPACE)); | 234 | focus = output->swayc->children->items[0]; |
235 | } | ||
236 | struct sway_container *workspace = focus->type == C_WORKSPACE ? | ||
237 | focus : container_parent(focus, C_WORKSPACE); | ||
235 | 238 | ||
236 | struct render_data rdata = { | 239 | struct render_data rdata = { |
237 | .output = output, | 240 | .output = output, |