diff options
Diffstat (limited to 'sway/desktop')
| -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,  	struct sway_seat *seat = input_manager_current_seat(input_manager);  	struct sway_container *focus =  		sway_seat_get_focus_inactive(seat, output->swayc); -	struct sway_container *workspace = (focus->type == C_WORKSPACE ? -			focus : -			container_parent(focus, C_WORKSPACE)); +	if (!focus) { +		// We've never been to this output before +		focus = output->swayc->children->items[0]; +	} +	struct sway_container *workspace = focus->type == C_WORKSPACE ? +			focus : container_parent(focus, C_WORKSPACE);  	struct render_data rdata = {  		.output = output,  | 
