patch 8.0.0820: GUI: cursor in terminal window lags behind
Problem: GUI: cursor in terminal window lags behind.
Solution: call gui_update_cursor() under different conditions. (Ozaki
Kiichi, closes #1893)
diff --git a/src/terminal.c b/src/terminal.c
index be76161..b289f6c 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -51,6 +51,9 @@
* job finishes).
* - add option values to the command:
* :term <24x80> <close> vim notes.txt
+ * - support different cursor shapes, colors and attributes
+ * - make term_getcursor() return type (none/block/bar/underline) and
+ * attributes (color, blink, etc.)
* - To set BS correctly, check get_stty(); Pass the fd of the pty.
* - do not store terminal window in viminfo. Or prefix term:// ?
* - add a character in :ls output
@@ -359,7 +362,7 @@
cursor_on();
out_flush();
#ifdef FEAT_GUI
- if (gui.in_use && term->tl_cursor_visible)
+ if (gui.in_use)
gui_update_cursor(FALSE, FALSE);
#endif
}
@@ -1034,7 +1037,7 @@
if (term->tl_buffer == curbuf)
{
may_toggle_cursor(term);
- update_cursor(term, TRUE);
+ update_cursor(term, term->tl_cursor_visible);
}
return 1;
@@ -1180,11 +1183,12 @@
/* Need to break out of vgetc(). */
ins_char_typebuf(K_IGNORE);
- if (curbuf->b_term != NULL)
+ term = curbuf->b_term;
+ if (term != NULL)
{
- if (curbuf->b_term->tl_job == ch->ch_job)
+ if (term->tl_job == ch->ch_job)
maketitle();
- update_cursor(curbuf->b_term, TRUE);
+ update_cursor(term, term->tl_cursor_visible);
}
}
}
diff --git a/src/version.c b/src/version.c
index 2d4c50e..8733db2 100644
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 820,
+/**/
819,
/**/
818,