diff --git a/sway/input/seat.c b/sway/input/seat.c index 443fe367..2c279ff2 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -530,6 +530,7 @@ void seat_set_focus_warp(struct sway_seat *seat, if (container->type == C_VIEW) { seat_send_focus(seat, container); } + container_damage_whole(container); } // clean up unfocused empty workspace on new output @@ -575,6 +576,10 @@ void seat_set_focus_warp(struct sway_seat *seat, } } + if (last_focus) { + container_damage_whole(last_focus); + } + if (last_focus && last_focus->type == C_VIEW && !input_manager_has_focus(seat->input, last_focus)) { struct sway_view *view = last_focus->sway_view;