changeset 18004:6006bb74bd52 v8.1.1998

patch 8.1.1998: redraw even when no popup window filter was invoked Commit: https://github.com/vim/vim/commit/fbb3bc89b3ae29b5d42cc5951db67e2e71a22880 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Sep 7 14:33:36 2019 +0200 patch 8.1.1998: redraw even when no popup window filter was invoked Problem: Redraw even when no popup window filter was invoked. Solution: Only redraw when must_redraw was set to a larger value.
author Bram Moolenaar <Bram@vim.org>
date Sat, 07 Sep 2019 14:45:03 +0200
parents f4e09b355181
children 9b87fb26ff19
files src/popupwin.c src/version.c
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -2779,6 +2779,7 @@ popup_do_filter(int c)
     win_T	*wp;
     int		save_KeyTyped = KeyTyped;
     int		state;
+    int		was_must_redraw = must_redraw;
 
     if (recursive)
 	return FALSE;
@@ -2802,7 +2803,7 @@ popup_do_filter(int c)
 		&& (wp->w_filter_mode & state) != 0)
 	    res = invoke_popup_filter(wp, c);
 
-    if (must_redraw)
+    if (must_redraw > was_must_redraw)
 	redraw_after_callback(FALSE);
     recursive = FALSE;
     KeyTyped = save_KeyTyped;
--- a/src/version.c
+++ b/src/version.c
@@ -758,6 +758,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1998,
+/**/
     1997,
 /**/
     1996,