From: Bram Moolenaar Date: Wed, 26 Jul 2017 19:49:37 +0000 (+0200) Subject: patch 8.0.0778: in a terminal the cursor may be hidden X-Git-Tag: v8.0.0778 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4cc93dc85a7aaf6bb1ccccc466f8d5fa523094e4;p=vim patch 8.0.0778: in a terminal the cursor may be hidden Problem: In a terminal the cursor may be hidden and screen updating lags behind. (Nazri Ramliy) Solution: Switch the cursor on and flush output when needed. (Ozaki Kiichi) --- diff --git a/src/terminal.c b/src/terminal.c index 4cc755c0c..e4e9cec33 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -321,13 +321,14 @@ term_write_job_output(term_T *term, char_u *msg, size_t len) static void update_cursor(term_T *term, int redraw) { - /* TODO: this should not always be needed */ setcursor(); - if (redraw && term->tl_buffer == curbuf && term->tl_cursor_visible) + if (redraw && term->tl_buffer == curbuf) { + if (term->tl_cursor_visible) + cursor_on(); out_flush(); #ifdef FEAT_GUI - if (gui.in_use) + if (gui.in_use && term->tl_cursor_visible) gui_update_cursor(FALSE, FALSE); #endif } diff --git a/src/version.c b/src/version.c index fe82a368e..051f75f5c 100644 --- a/src/version.c +++ b/src/version.c @@ -769,6 +769,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 778, /**/ 777, /**/