diff options
author | Drew DeVault <sir@cmpwn.com> | 2018-05-11 07:34:14 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-11 07:34:14 -0400 |
commit | 2217518bd554d0f11dafa7ec4e8f35f2e4762fbd (patch) | |
tree | e541fb35656224109ec2d03275dce45afca0653f | |
parent | Merge pull request #1955 from ggreer/normal-borders (diff) | |
parent | cmd_move_container: Focus a window on the source workspace. (diff) | |
download | sway-2217518bd554d0f11dafa7ec4e8f35f2e4762fbd.tar.gz sway-2217518bd554d0f11dafa7ec4e8f35f2e4762fbd.tar.zst sway-2217518bd554d0f11dafa7ec4e8f35f2e4762fbd.zip |
Merge pull request #1956 from ggreer/move-focus
cmd_move_container: Focus a window on the source workspace.
-rw-r--r-- | sway/commands/move.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sway/commands/move.c b/sway/commands/move.c index a5273ba4..890b1a8c 100644 --- a/sway/commands/move.c +++ b/sway/commands/move.c | |||
@@ -90,12 +90,14 @@ static struct cmd_results *cmd_move_container(struct sway_container *current, | |||
90 | } | 90 | } |
91 | free(ws_name); | 91 | free(ws_name); |
92 | struct sway_container *old_parent = current->parent; | 92 | struct sway_container *old_parent = current->parent; |
93 | struct sway_container *focus = seat_get_focus_inactive( | 93 | struct sway_container *destination = seat_get_focus_inactive( |
94 | config->handler_context.seat, ws); | 94 | config->handler_context.seat, ws); |
95 | container_move_to(current, focus); | 95 | container_move_to(current, destination); |
96 | seat_set_focus(config->handler_context.seat, old_parent); | 96 | struct sway_container *focus = seat_get_focus_inactive( |
97 | config->handler_context.seat, old_parent); | ||
98 | seat_set_focus(config->handler_context.seat, focus); | ||
97 | container_reap_empty(old_parent); | 99 | container_reap_empty(old_parent); |
98 | container_reap_empty(focus->parent); | 100 | container_reap_empty(destination->parent); |
99 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | 101 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); |
100 | } else if (strcasecmp(argv[1], "to") == 0 | 102 | } else if (strcasecmp(argv[1], "to") == 0 |
101 | && strcasecmp(argv[2], "output") == 0) { | 103 | && strcasecmp(argv[2], "output") == 0) { |