mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-08 09:14:22 +01:00
Sync OpenBSD patchset 416:
Always move the cursor position on !xenl terminals, since there is no invisible last cursor position. Also nuke an unused variable.
This commit is contained in:
parent
2e39ab59d7
commit
2f14ef61ff
@ -1,4 +1,4 @@
|
||||
/* $Id: screen-write.c,v 1.79 2009-10-23 17:07:18 tcunha Exp $ */
|
||||
/* $Id: screen-write.c,v 1.80 2009-10-23 17:08:30 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -990,7 +990,7 @@ screen_write_cell(
|
||||
struct tty_ctx ttyctx;
|
||||
struct grid_utf8 gu, *tmp_gu;
|
||||
u_int width, xx, i;
|
||||
struct grid_cell tmp_gc, tmp_gc2, *tmp_gcp;
|
||||
struct grid_cell tmp_gc, *tmp_gcp;
|
||||
int insert = 0;
|
||||
|
||||
/* Ignore padding. */
|
||||
@ -1101,13 +1101,13 @@ screen_write_cell(
|
||||
}
|
||||
ttyctx.utf8 = &gu;
|
||||
if (screen_check_selection(s, s->cx - width, s->cy)) {
|
||||
memcpy(&tmp_gc2, &s->sel.cell, sizeof tmp_gc2);
|
||||
tmp_gc2.data = gc->data;
|
||||
tmp_gc2.flags = gc->flags &
|
||||
memcpy(&tmp_gc, &s->sel.cell, sizeof tmp_gc);
|
||||
tmp_gc.data = gc->data;
|
||||
tmp_gc.flags = gc->flags &
|
||||
~(GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
tmp_gc2.flags |= s->sel.cell.flags &
|
||||
tmp_gc.flags |= s->sel.cell.flags &
|
||||
(GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
ttyctx.cell = &tmp_gc2;
|
||||
ttyctx.cell = &tmp_gc;
|
||||
tty_write(tty_cmd_cell, &ttyctx);
|
||||
} else {
|
||||
ttyctx.cell = gc;
|
||||
|
5
tty.c
5
tty.c
@ -1,4 +1,4 @@
|
||||
/* $Id: tty.c,v 1.154 2009-10-23 17:06:23 tcunha Exp $ */
|
||||
/* $Id: tty.c,v 1.155 2009-10-23 17:08:30 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -855,7 +855,8 @@ tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx)
|
||||
* Should the cursor be in the last cursor position ready for a natural
|
||||
* wrap? If so - and it isn't - move to and rewrite the last cell.
|
||||
*/
|
||||
if (ctx->ocx + wp->xoff > tty->sx - ctx->last_width) {
|
||||
if (!(tty->term->flags & TERM_EARLYWRAP) &&
|
||||
ctx->ocx + wp->xoff > tty->sx - ctx->last_width) {
|
||||
if (tty->cx < tty->sx) {
|
||||
cx = screen_size_x(s) - ctx->last_width;
|
||||
tty_cursor_pane(tty, ctx, cx, ctx->ocy);
|
||||
|
Loading…
Reference in New Issue
Block a user