Merge branch 'obsd-master'

This commit is contained in:
Thomas Adam 2018-09-11 20:11:11 +01:00
commit c067af8e7d

34
tty.c
View File

@ -1698,17 +1698,12 @@ tty_cmd_alignmenttest(struct tty *tty, const struct tty_ctx *ctx)
void void
tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx) tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx)
{ {
if (!tty_is_visible(tty, ctx, ctx->ocx, ctx->ocy, 1, 1)) if (ctx->xoff + ctx->ocx > tty->sx - 1 &&
return; ctx->ocy == ctx->orlower &&
tty_pane_full_width(tty, ctx))
if (ctx->xoff + ctx->ocx - ctx->ox > tty->sx - 1 &&
ctx->ocy == ctx->orlower) {
if (tty_pane_full_width(tty, ctx))
tty_region_pane(tty, ctx, ctx->orupper, ctx->orlower); tty_region_pane(tty, ctx, ctx->orupper, ctx->orlower);
else
tty_margin_off(tty);
}
tty_margin_off(tty);
tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy); tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy);
tty_cell(tty, ctx->cell, ctx->wp); tty_cell(tty, ctx->cell, ctx->wp);
@ -1717,26 +1712,7 @@ tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx)
void void
tty_cmd_cells(struct tty *tty, const struct tty_ctx *ctx) tty_cmd_cells(struct tty *tty, const struct tty_ctx *ctx)
{ {
struct window_pane *wp = ctx->wp; tty_margin_off(tty);
if (!tty_is_visible(tty, ctx, ctx->ocx, ctx->ocy, ctx->num, 1))
return;
if (ctx->bigger &&
(ctx->ocx < ctx->ox || ctx->ocx + ctx->num > ctx->ox + ctx->sx)) {
if (!ctx->wrapped ||
!tty_pane_full_width(tty, ctx) ||
(tty->term->flags & TERM_EARLYWRAP) ||
ctx->xoff + ctx->ocx != 0 ||
ctx->yoff + ctx->ocy != tty->cy + 1 ||
tty->cx < tty->sx ||
tty->cy == tty->rlower)
tty_draw_pane(tty, ctx, ctx->ocy);
else
wp->flags |= PANE_REDRAW;
return;
}
tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy); tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy);
tty_attributes(tty, ctx->cell, ctx->wp); tty_attributes(tty, ctx->cell, ctx->wp);