patch 8.2.0670: cannot change window when evaluating 'completefunc'

Problem:    Cannot change window when evaluating 'completefunc'.
Solution:   Make a difference between not changing text or buffers and also
            not changing window.
diff --git a/src/edit.c b/src/edit.c
index 7f4f765..0ac63ec 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -176,9 +176,10 @@
     // Don't allow changes in the buffer while editing the cmdline.  The
     // caller of getcmdline() may get confused.
     // Don't allow recursive insert mode when busy with completion.
-    if (textlock != 0 || ins_compl_active() || compl_busy || pum_visible())
+    if (textwinlock != 0 || textlock != 0
+			  || ins_compl_active() || compl_busy || pum_visible())
     {
-	emsg(_(e_textlock));
+	emsg(_(e_textwinlock));
 	return FALSE;
     }
     ins_compl_clear();	    // clear stuff for CTRL-X mode
@@ -5944,7 +5945,7 @@
     }
 
     // Lock the text to avoid weird things from happening.
-    ++textlock;
+    ++textwinlock;
     set_vim_var_string(VV_CHAR, buf, -1);  // set v:char
 
     res = NULL;
@@ -5958,7 +5959,7 @@
     }
 
     set_vim_var_string(VV_CHAR, NULL, -1);  // clear v:char
-    --textlock;
+    --textwinlock;
 
     // Restore the State, it may have been changed.
     State = save_State;