summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--screen-redraw.c3
-rw-r--r--server.c1
2 files changed, 4 insertions, 0 deletions
diff --git a/screen-redraw.c b/screen-redraw.c
index eee1c83c..5ee273a5 100644
--- a/screen-redraw.c
+++ b/screen-redraw.c
@@ -173,6 +173,7 @@ screen_redraw_screen(struct client *c, int status_only)
/* If only drawing status and it is present, don't need the rest. */
if (status_only && status) {
tty_draw_line(tty, &c->status, 0, 0, tty->sy - 1);
+ tty_reset(tty);
return;
}
@@ -214,6 +215,7 @@ screen_redraw_screen(struct client *c, int status_only)
/* Draw the status line. */
if (status)
tty_draw_line(tty, &c->status, 0, 0, tty->sy - 1);
+ tty_reset(tty);
}
/* Draw a single pane. */
@@ -224,4 +226,5 @@ screen_redraw_pane(struct client *c, struct window_pane *wp)
for (i = 0; i < wp->sy; i++)
tty_draw_line(&c->tty, wp->screen, i, wp->xoff, wp->yoff);
+ tty_reset(&c->tty);
}
diff --git a/server.c b/server.c
index 927cfeb6..ab407a04 100644
--- a/server.c
+++ b/server.c
@@ -866,6 +866,7 @@ server_handle_client(struct client *c)
/* Ensure cursor position and mode settings. */
status = options_get_number(&c->session->options, "status");
+ tty_region(&c->tty, 0, c->tty.sy - 1, 0);
if (!window_pane_visible(wp) || wp->yoff + s->cy >= c->tty.sy - status)
tty_cursor(&c->tty, 0, 0, 0, 0);
else