version 1.7, 2012/07/11 07:10:15 |
version 1.8, 2013/03/21 16:49:37 |
|
|
|
|
const struct cmd_entry cmd_refresh_client_entry = { |
const struct cmd_entry cmd_refresh_client_entry = { |
"refresh-client", "refresh", |
"refresh-client", "refresh", |
"St:", 0, 0, |
"C:St:", 0, 0, |
"[-S] " CMD_TARGET_CLIENT_USAGE, |
"[-S] [-C size]" CMD_TARGET_CLIENT_USAGE, |
0, |
0, |
NULL, |
NULL, |
NULL, |
NULL, |
|
|
{ |
{ |
struct args *args = self->args; |
struct args *args = self->args; |
struct client *c; |
struct client *c; |
|
const char *size; |
|
u_int w, h; |
|
|
if ((c = cmd_find_client(ctx, args_get(args, 't'))) == NULL) |
if ((c = cmd_find_client(ctx, args_get(args, 't'))) == NULL) |
return (CMD_RETURN_ERROR); |
return (CMD_RETURN_ERROR); |
|
|
if (args_has(args, 'S')) { |
if (args_has(args, 'C')) { |
|
if ((size = args_get(args, 'C')) == NULL) { |
|
ctx->error(ctx, "missing size"); |
|
return (CMD_RETURN_ERROR); |
|
} |
|
if (sscanf(size, "%u,%u", &w, &h) != 2) { |
|
ctx->error(ctx, "bad size argument"); |
|
return (CMD_RETURN_ERROR); |
|
} |
|
if (w < PANE_MINIMUM || w > 5000 || |
|
h < PANE_MINIMUM || h > 5000) { |
|
ctx->error(ctx, "size too small or too big"); |
|
return (CMD_RETURN_ERROR); |
|
} |
|
if (!(c->flags & CLIENT_CONTROL)) { |
|
ctx->error(ctx, "not a control client"); |
|
return (CMD_RETURN_ERROR); |
|
} |
|
if (tty_set_size(&c->tty, w, h)) |
|
recalculate_sizes(); |
|
} else if (args_has(args, 'S')) { |
status_update_jobs(c); |
status_update_jobs(c); |
server_status_client(c); |
server_status_client(c); |
} else |
} else |