summaryrefslogtreecommitdiff
path: root/src/normal.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-03-16 22:08:45 +0100
committerBram Moolenaar <Bram@vim.org>2020-03-16 22:08:45 +0100
commit5715b3147bfc8ddfe905339f6fd224fd3a5a3ba1 (patch)
tree1fbe00b0d4b3ca4cd2a74141f78581596a6c387c /src/normal.c
parent24ebd83e030e1c6f9a6be1f06232756ba4d00a8c (diff)
downloadvim-git-5715b3147bfc8ddfe905339f6fd224fd3a5a3ba1.tar.gz
patch 8.2.0397: delayed screen update when using undo from Insert modev8.2.0397
Problem: Delayed screen update when using undo from Insert mode. Solution: Update w_topline and cursor shape before sleeping. (closes #5790)
Diffstat (limited to 'src/normal.c')
-rw-r--r--src/normal.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/normal.c b/src/normal.c
index df2cf537e..8ec98e533 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -1154,7 +1154,9 @@ getcount:
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 @@ getcount:
}
}
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 @@ set_vcount_ca(cmdarg_T *cap, int *set_prevcount)
#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