diff src/screen.c @ 13400:c415cdd49ea4 v8.0.1574

patch 8.0.1574: show cursor in wrong place when using popup menu commit https://github.com/vim/vim/commit/987723e084660290270b3c3d943eb13bd828d5da Author: Bram Moolenaar <Bram@vim.org> Date: Tue Mar 6 11:43:04 2018 +0100 patch 8.0.1574: show cursor in wrong place when using popup menu Problem: Show cursor in wrong place when using popup menu. (Wei Zhang) Solution: Force updating the cursor position. Fix skipping over unused entries.
author Christian Brabandt <cb@256bit.org>
date Tue, 06 Mar 2018 11:45:05 +0100
parents 69517d67421f
children 9b09f6e470e0
line wrap: on
line diff
--- a/src/screen.c
+++ b/src/screen.c
@@ -9471,7 +9471,17 @@ windgoto(int row, int col)
     void
 setcursor(void)
 {
-    if (redrawing())
+    setcursor_mayforce(FALSE);
+}
+
+/*
+ * Set cursor to its position in the current window.
+ * When "force" is TRUE also when not redrawing.
+ */
+    void
+setcursor_mayforce(int force)
+{
+    if (force || redrawing())
     {
 	validate_cursor();
 	windgoto(W_WINROW(curwin) + curwin->w_wrow,