Track the last session for a client and add a flag to switch-client and

a key binding (L) to move a client back to its last session.
This commit is contained in:
Nicholas Marriott
2010-12-11 18:42:20 +00:00
parent d227a2e661
commit 5fcd6711e4
7 changed files with 64 additions and 22 deletions

View File

@ -1,4 +1,4 @@
/* $Id: cmd-new-session.c,v 1.78 2010-07-02 02:49:19 tcunha Exp $ */
/* $Id: cmd-new-session.c,v 1.79 2010-12-11 18:42:20 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -279,9 +279,17 @@ cmd_new_session_exec(struct cmd *self, struct cmd_ctx *ctx)
if (!detached) {
if (ctx->cmdclient != NULL) {
server_write_client(ctx->cmdclient, MSG_READY, NULL, 0);
if (ctx->cmdclient->session != NULL) {
session_index(ctx->cmdclient->session,
&ctx->cmdclient->last_session);
}
ctx->cmdclient->session = s;
server_redraw_client(ctx->cmdclient);
} else {
if (ctx->curclient->session != NULL) {
session_index(ctx->curclient->session,
&ctx->curclient->last_session);
}
ctx->curclient->session = s;
server_redraw_client(ctx->curclient);
}