patch 8.2.0397: delayed screen update when using undo from Insert mode
Problem: Delayed screen update when using undo from Insert mode.
Solution: Update w_topline and cursor shape before sleeping. (closes #5790)
diff --git a/src/normal.c b/src/normal.c
index df2cf53..8ec98e5 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -1154,7 +1154,9 @@
kmsg = keep_msg;
keep_msg = NULL;
- // showmode() will clear keep_msg, but we want to use it anyway
+ // Showmode() will clear keep_msg, but we want to use it anyway.
+ // First update w_topline.
+ setcursor();
update_screen(0);
// now reset it, otherwise it's put in the history again
keep_msg = kmsg;
@@ -1167,6 +1169,9 @@
}
}
setcursor();
+#ifdef CURSOR_SHAPE
+ ui_cursor_shape(); // may show different cursor shape
+#endif
cursor_on();
out_flush();
if (msg_scroll || emsg_on_display)
@@ -1280,7 +1285,7 @@
#endif
/*
- * Check if highlighting for visual mode is possible, give a warning message
+ * Check if highlighting for Visual mode is possible, give a warning message
* if not.
*/
void
diff --git a/src/version.c b/src/version.c
index 51ffb8c..f44ac2f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 397,
+/**/
396,
/**/
395,