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.
diff --git a/src/screen.c b/src/screen.c
index 935f981..5ab2e85 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -9471,7 +9471,17 @@
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,