Like linefeed, don't set the scroll region for reverse index unless it will be

needed.

While here, also tidy up a couple of long lines and remove an extraneous blank.
This commit is contained in:
Nicholas Marriott 2009-10-11 22:35:10 +00:00
parent b4ef3e5071
commit 0a2a354499

13
tty.c
View File

@ -462,8 +462,10 @@ tty_draw_line(struct tty *tty, struct screen *s, u_int py, u_int ox, u_int oy)
if (screen_check_selection(s, i, py)) { if (screen_check_selection(s, i, py)) {
memcpy(&tmpgc, &s->sel.cell, sizeof tmpgc); memcpy(&tmpgc, &s->sel.cell, sizeof tmpgc);
tmpgc.data = gc->data; tmpgc.data = gc->data;
tmpgc.flags = gc->flags & ~(GRID_FLAG_FG256|GRID_FLAG_BG256); tmpgc.flags = gc->flags &
tmpgc.flags |= s->sel.cell.flags & (GRID_FLAG_FG256|GRID_FLAG_BG256); ~(GRID_FLAG_FG256|GRID_FLAG_BG256);
tmpgc.flags |= s->sel.cell.flags &
(GRID_FLAG_FG256|GRID_FLAG_BG256);
tty_cell(tty, &tmpgc, gu); tty_cell(tty, &tmpgc, gu);
} else } else
tty_cell(tty, gc, gu); tty_cell(tty, gc, gu);
@ -671,11 +673,9 @@ tty_cmd_reverseindex(struct tty *tty, const struct tty_ctx *ctx)
return; return;
} }
tty_reset(tty);
tty_region(tty, ctx->orupper, ctx->orlower, wp->yoff);
if (ctx->ocy == ctx->orupper) { if (ctx->ocy == ctx->orupper) {
tty_reset(tty);
tty_region(tty, ctx->orupper, ctx->orlower, wp->yoff);
tty_cursor(tty, ctx->ocx, ctx->orupper, wp->xoff, wp->yoff); tty_cursor(tty, ctx->ocx, ctx->orupper, wp->xoff, wp->yoff);
tty_putcode(tty, TTYC_RI); tty_putcode(tty, TTYC_RI);
} }
@ -693,7 +693,6 @@ tty_cmd_linefeed(struct tty *tty, const struct tty_ctx *ctx)
return; return;
} }
if (ctx->ocy == ctx->orlower) { if (ctx->ocy == ctx->orlower) {
tty_reset(tty); tty_reset(tty);
tty_region(tty, ctx->orupper, ctx->orlower, wp->yoff); tty_region(tty, ctx->orupper, ctx->orlower, wp->yoff);