version 1.169, 2017/10/16 19:30:53 |
version 1.170, 2017/10/20 13:10:54 |
|
|
memcpy(&old_status, &c->status, sizeof old_status); |
memcpy(&old_status, &c->status, sizeof old_status); |
screen_init(&c->status, c->tty.sx, lines, 0); |
screen_init(&c->status, c->tty.sx, lines, 0); |
screen_write_start(&ctx, NULL, &c->status); |
screen_write_start(&ctx, NULL, &c->status); |
screen_write_clearscreen(&ctx, stdgc.bg); |
for (offset = 0; offset < lines * c->tty.sx; offset++) |
|
screen_write_putc(&ctx, &stdgc, ' '); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
|
|
/* If the height is too small, blank status line. */ |
/* If the height is too small, blank status line. */ |
|
|
struct screen old_status; |
struct screen old_status; |
size_t len; |
size_t len; |
struct grid_cell gc; |
struct grid_cell gc; |
u_int lines; |
u_int lines, offset; |
|
|
if (c->tty.sx == 0 || c->tty.sy == 0) |
if (c->tty.sx == 0 || c->tty.sy == 0) |
return (0); |
return (0); |
|
|
style_apply(&gc, s->options, "message-style"); |
style_apply(&gc, s->options, "message-style"); |
|
|
screen_write_start(&ctx, NULL, &c->status); |
screen_write_start(&ctx, NULL, &c->status); |
screen_write_clearscreen(&ctx, gc.bg); |
screen_write_cursormove(&ctx, 0, 0); |
|
for (offset = 0; offset < lines * c->tty.sx; offset++) |
|
screen_write_putc(&ctx, &gc, ' '); |
screen_write_cursormove(&ctx, 0, lines - 1); |
screen_write_cursormove(&ctx, 0, lines - 1); |
screen_write_nputs(&ctx, len, &gc, "%s", c->message_string); |
screen_write_nputs(&ctx, len, &gc, "%s", c->message_string); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
|
|
start = c->tty.sx; |
start = c->tty.sx; |
|
|
screen_write_start(&ctx, NULL, &c->status); |
screen_write_start(&ctx, NULL, &c->status); |
screen_write_clearscreen(&ctx, gc.bg); |
screen_write_cursormove(&ctx, 0, 0); |
screen_write_cursormove(&ctx, 0, lines - 1); |
for (offset = 0; offset < lines * c->tty.sx; offset++) |
|
screen_write_putc(&ctx, &gc, ' '); |
|
screen_write_cursormove(&ctx, 0, 0); |
screen_write_nputs(&ctx, start, &gc, "%s", c->prompt_string); |
screen_write_nputs(&ctx, start, &gc, "%s", c->prompt_string); |
screen_write_cursormove(&ctx, start, lines - 1); |
screen_write_cursormove(&ctx, start, 0); |
|
|
left = c->tty.sx - start; |
left = c->tty.sx - start; |
if (left == 0) |
if (left == 0) |