From: Bram Moolenaar Date: Mon, 18 Jun 2018 20:15:50 +0000 (+0200) Subject: patch 8.1.0076: command getting cleared with CTRL-W : in a terminal window X-Git-Tag: v8.1.0076 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0ce7413a8318ec0b01386c54ee09d3d94216cb15;p=vim patch 8.1.0076: command getting cleared with CTRL-W : in a terminal window Problem: Command getting cleared with CTRL-W : in a terminal window. (Jason Franklin) Solution: Call redraw_after_callback() when editing the command line. --- diff --git a/src/terminal.c b/src/terminal.c index f4fa55165..a67c87a4b 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -973,11 +973,13 @@ write_to_term(buf_T *buffer, char_u *msg, channel_T *channel) * contents, thus no screen update is needed. */ if (!term->tl_normal_mode) { - /* TODO: only update once in a while. */ + // Don't use update_screen() when editing the command line, it gets + // cleared. + // TODO: only update once in a while. ch_log(term->tl_job->jv_channel, "updating screen"); - if (buffer == curbuf) + if (buffer == curbuf && (State & CMDLINE) == 0) { - update_screen(0); + update_screen(VALID_NO_UPDATE); /* update_screen() can be slow, check the terminal wasn't closed * already */ if (buffer == curbuf && curbuf->b_term != NULL) diff --git a/src/version.c b/src/version.c index bc79f7d2a..04923fb3f 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 76, /**/ 75, /**/