]> granicus.if.org Git - vim/commitdiff
patch 8.1.1998: redraw even when no popup window filter was invoked v8.1.1998
authorBram Moolenaar <Bram@vim.org>
Sat, 7 Sep 2019 12:33:36 +0000 (14:33 +0200)
committerBram Moolenaar <Bram@vim.org>
Sat, 7 Sep 2019 12:33:36 +0000 (14:33 +0200)
Problem:    Redraw even when no popup window filter was invoked.
Solution:   Only redraw when must_redraw was set to a larger value.

src/popupwin.c
src/version.c

index 1fb72bbdb571b30b1929bbd505c22df109d3146e..7fb9792f5f78f29a712391b137def84f31220a2f 100644 (file)
@@ -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;
index d933bffa2dd6bc997f440acdb8105084f168aeb4..634efd1de95406aad71287ee1cac1fb014852711 100644 (file)
@@ -757,6 +757,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1998,
 /**/
     1997,
 /**/