diff src/popupwin.c @ 17841:9513821d9d8f v8.1.1917

patch 8.1.1917: non-current window is not redrawn when moving popup Commit: https://github.com/vim/vim/commit/356375fbf882535b5a5980d175c11abfa446a7cb Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 24 14:46:29 2019 +0200 patch 8.1.1917: non-current window is not redrawn when moving popup Problem: Non-current window is not redrawn when moving popup. (Ben Jackson) Solution: Redraw all windows under a popup. (closes https://github.com/vim/vim/issues/4860)
author Bram Moolenaar <Bram@vim.org>
date Sat, 24 Aug 2019 15:00:04 +0200
parents 7e6b7a4f13bc
children 9696c76f2213
line wrap: on
line diff
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -1219,7 +1219,7 @@ popup_adjust_position(win_T *wp)
     wp->w_popup_last_changedtick = CHANGEDTICK(wp->w_buffer);
 
     // Need to update popup_mask if the position or size changed.
-    // And redraw windows that were behind the popup.
+    // And redraw windows and statuslines that were behind the popup.
     if (org_winrow != wp->w_winrow
 	    || org_wincol != wp->w_wincol
 	    || org_leftcol != wp->w_leftcol
@@ -1227,8 +1227,9 @@ popup_adjust_position(win_T *wp)
 	    || org_width != wp->w_width
 	    || org_height != wp->w_height)
     {
-	redraw_all_later(VALID);
 	redraw_win_later(wp, NOT_VALID);
+	redraw_all_later(SOME_VALID);
+	status_redraw_all();
 	if (wp->w_popup_flags & POPF_ON_CMDLINE)
 	    clear_cmdline = TRUE;
 	popup_mask_refresh = TRUE;