diff --git a/sway/commands/move.c b/sway/commands/move.c index c2098818..d562b5f1 100644 --- a/sway/commands/move.c +++ b/sway/commands/move.c @@ -622,7 +622,8 @@ static void workspace_move_to_output(struct sway_workspace *workspace, workspace_consider_destroy(new_output_old_ws); output_sort_workspaces(output); - seat_set_focus(seat, &output->node); + struct sway_node *focus = seat_get_focus_inactive(seat, &workspace->node); + seat_set_focus(seat, focus); workspace_output_raise_priority(workspace, old_output, output); ipc_event_workspace(NULL, workspace, "move"); }