version 1.28, 2016/10/16 19:04:05 |
version 1.29, 2017/04/22 10:22:39 |
|
|
.args = { "adkrs:t:", 0, 0 }, |
.args = { "adkrs:t:", 0, 0 }, |
.usage = "[-dkr] " CMD_SRCDST_WINDOW_USAGE, |
.usage = "[-dkr] " CMD_SRCDST_WINDOW_USAGE, |
|
|
.sflag = CMD_WINDOW, |
.source = { 's', CMD_FIND_WINDOW, 0 }, |
.tflag = CMD_MOVEW_R, |
/* -t is special */ |
|
|
.flags = 0, |
.flags = 0, |
.exec = cmd_move_window_exec |
.exec = cmd_move_window_exec |
|
|
.args = { "adks:t:", 0, 0 }, |
.args = { "adks:t:", 0, 0 }, |
.usage = "[-dk] " CMD_SRCDST_WINDOW_USAGE, |
.usage = "[-dk] " CMD_SRCDST_WINDOW_USAGE, |
|
|
.sflag = CMD_WINDOW, |
.source = { 's', CMD_FIND_WINDOW, 0 }, |
.tflag = CMD_WINDOW_INDEX, |
/* -t is special */ |
|
|
.flags = 0, |
.flags = 0, |
.exec = cmd_move_window_exec |
.exec = cmd_move_window_exec |
|
|
cmd_move_window_exec(struct cmd *self, struct cmdq_item *item) |
cmd_move_window_exec(struct cmd *self, struct cmdq_item *item) |
{ |
{ |
struct args *args = self->args; |
struct args *args = self->args; |
struct session *src = item->state.sflag.s; |
const char *tflag = args_get(args, 't'); |
struct session *dst = item->state.tflag.s; |
struct session *src; |
struct winlink *wl = item->state.sflag.wl; |
struct session *dst; |
|
struct winlink *wl; |
char *cause; |
char *cause; |
int idx = item->state.tflag.idx, kflag, dflag, sflag; |
int idx, kflag, dflag, sflag; |
|
|
if (args_has(args, 'r')) { |
if (args_has(args, 'r')) { |
session_renumber_windows(dst); |
if (cmd_find_target(&item->target, item, tflag, |
|
CMD_FIND_SESSION, CMD_FIND_QUIET) != 0) |
|
return (CMD_RETURN_ERROR); |
|
|
|
session_renumber_windows(item->target.s); |
recalculate_sizes(); |
recalculate_sizes(); |
|
server_status_session(item->target.s); |
|
|
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
} |
} |
|
if (cmd_find_target(&item->target, item, tflag, CMD_FIND_WINDOW, |
|
CMD_FIND_WINDOW_INDEX) != 0) |
|
return (CMD_RETURN_ERROR); |
|
src = item->source.s; |
|
dst = item->target.s; |
|
wl = item->source.wl; |
|
idx = item->target.idx; |
|
|
kflag = args_has(self->args, 'k'); |
kflag = args_has(self->args, 'k'); |
dflag = args_has(self->args, 'd'); |
dflag = args_has(self->args, 'd'); |