mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-23 00:23:08 +01:00
Emulate dch/dch1 if missing by redrawing the entire line.
This commit is contained in:
parent
915a1913e1
commit
926b52b600
@ -338,10 +338,6 @@ tty_term_find(char *name, int fd, const char *overrides, char **cause)
|
||||
"terminal does not support ich1 or ich or smir and rmir");
|
||||
goto error;
|
||||
}
|
||||
if (!tty_term_has(term, TTYC_DCH1) && !tty_term_has(term, TTYC_DCH)) {
|
||||
xasprintf(cause, "terminal does not support dch1 or dch");
|
||||
goto error;
|
||||
}
|
||||
|
||||
/*
|
||||
* Figure out if terminal support default colours. AX is a screen
|
||||
|
8
tty.c
8
tty.c
@ -596,7 +596,9 @@ tty_cmd_deletecharacter(struct tty *tty, const struct tty_ctx *ctx)
|
||||
struct window_pane *wp = ctx->wp;
|
||||
struct screen *s = wp->screen;
|
||||
|
||||
if (wp->xoff != 0 || screen_size_x(s) < tty->sx) {
|
||||
if (wp->xoff != 0 || screen_size_x(s) < tty->sx ||
|
||||
(!tty_term_has(tty->term, TTYC_DCH) &&
|
||||
!tty_term_has(tty->term, TTYC_DCH1))) {
|
||||
tty_draw_line(tty, wp->screen, ctx->ocy, wp->xoff, wp->yoff);
|
||||
return;
|
||||
}
|
||||
@ -604,7 +606,9 @@ tty_cmd_deletecharacter(struct tty *tty, const struct tty_ctx *ctx)
|
||||
tty_reset(tty);
|
||||
|
||||
tty_cursor(tty, ctx->ocx, ctx->ocy, wp->xoff, wp->yoff);
|
||||
tty_emulate_repeat(tty, TTYC_DCH, TTYC_DCH1, ctx->num);
|
||||
if (tty_term_has(tty->term, TTYC_DCH) ||
|
||||
tty_term_has(tty->term, TTYC_DCH1))
|
||||
tty_emulate_repeat(tty, TTYC_DCH, TTYC_DCH1, ctx->num);
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user