summaryrefslogtreecommitdiffstats
path: root/screen-write.c
diff options
context:
space:
mode:
authornicm <nicm>2020-04-16 21:46:43 +0000
committernicm <nicm>2020-04-16 21:46:43 +0000
commit5f18844b3251451c1c9d4a983c1246a03358b886 (patch)
tree65d477f175e53b0f019bd781b4def5a476729bbe /screen-write.c
parentd8433add47635348808cfd777bf6c7d90bc97d56 (diff)
Return to sending sync around clears.
Diffstat (limited to 'screen-write.c')
-rw-r--r--screen-write.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/screen-write.c b/screen-write.c
index bc12b7cd..ff7b12de 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -1397,17 +1397,20 @@ screen_write_collect_flush(struct screen_write_ctx *ctx, int scroll_only,
for (y = 0; y < screen_size_y(s); y++) {
TAILQ_FOREACH_SAFE(ci, &ctx->list[y].items, entry, tmp) {
screen_write_set_cursor(ctx, ci->x, y);
- screen_write_initctx(ctx, &ttyctx, 0);
if (ci->type == CLEAR) {
+ screen_write_initctx(ctx, &ttyctx, 1);
ttyctx.bg = ci->bg;
tty_write(tty_cmd_clearline, &ttyctx);
} else if (ci->type == CLEAR_END) {
+ screen_write_initctx(ctx, &ttyctx, 1);
ttyctx.bg = ci->bg;
tty_write(tty_cmd_clearendofline, &ttyctx);
} else if (ci->type == CLEAR_START) {
+ screen_write_initctx(ctx, &ttyctx, 1);
ttyctx.bg = ci->bg;
tty_write(tty_cmd_clearstartofline, &ttyctx);
} else {
+ screen_write_initctx(ctx, &ttyctx, 0);
ttyctx.cell = &ci->gc;
ttyctx.wrapped = ci->wrapped;
ttyctx.ptr = ci->data;