mirror of
https://github.com/tmux/tmux.git
synced 2025-09-03 14:27:09 +00:00
Sync OpenBSD patchset 287:
Emulate dch/dch1 if missing by redrawing the entire line.
This commit is contained in:
10
tty.c
10
tty.c
@ -1,4 +1,4 @@
|
||||
/* $Id: tty.c,v 1.129 2009-08-19 09:00:06 nicm Exp $ */
|
||||
/* $Id: tty.c,v 1.130 2009-08-21 21:15:00 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -604,7 +604,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;
|
||||
}
|
||||
@ -612,7 +614,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
|
||||
|
Reference in New Issue
Block a user