diff options
Diffstat (limited to 'tty.c')
-rw-r--r-- | tty.c | 36 |
1 files changed, 6 insertions, 30 deletions
@@ -1698,17 +1698,12 @@ tty_cmd_alignmenttest(struct tty *tty, const struct tty_ctx *ctx) void tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx) { - if (!tty_is_visible(tty, ctx, ctx->ocx, ctx->ocy, 1, 1)) - return; - - 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); - else - tty_margin_off(tty); - } + if (ctx->xoff + ctx->ocx > tty->sx - 1 && + ctx->ocy == ctx->orlower && + tty_pane_full_width(tty, ctx)) + tty_region_pane(tty, ctx, ctx->orupper, ctx->orlower); + tty_margin_off(tty); tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy); tty_cell(tty, ctx->cell, ctx->wp); @@ -1717,26 +1712,7 @@ tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx) void tty_cmd_cells(struct tty *tty, const struct tty_ctx *ctx) { - struct window_pane *wp = ctx->wp; - - 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_margin_off(tty); tty_cursor_pane_unless_wrap(tty, ctx, ctx->ocx, ctx->ocy); tty_attributes(tty, ctx->cell, ctx->wp); |