0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

patch 8.1.1997: no redraw after a popup window filter is invoked

Problem:    No redraw after a popup window filter is invoked.
Solution:   Redraw if needed.
This commit is contained in:
Bram Moolenaar 2019-09-07 14:06:52 +02:00
parent aad222c9c9
commit bcb4c8f905
4 changed files with 20 additions and 3 deletions

View File

@ -2802,6 +2802,8 @@ popup_do_filter(int c)
&& (wp->w_filter_mode & state) != 0) && (wp->w_filter_mode & state) != 0)
res = invoke_popup_filter(wp, c); res = invoke_popup_filter(wp, c);
if (must_redraw)
redraw_after_callback(FALSE);
recursive = FALSE; recursive = FALSE;
KeyTyped = save_KeyTyped; KeyTyped = save_KeyTyped;
return res; return res;

View File

@ -0,0 +1,10 @@
| +0&#ffffff0@74
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|:+0#0000000&> @73

View File

@ -2159,9 +2159,9 @@ func Test_popup_menu_filter()
call win_execute(a:winid, "call setpos('.', [0, line('.') - 1, 1, 0])") call win_execute(a:winid, "call setpos('.', [0, line('.') - 1, 1, 0])")
return 1 return 1
endif endif
if a:key == 'x' if a:key == ':'
call popup_close(a:winid) call popup_close(a:winid)
return 1 return 0
endif endif
return 0 return 0
endfunction endfunction
@ -2185,7 +2185,10 @@ func Test_popup_menu_filter()
call term_sendkeys(buf, "0") call term_sendkeys(buf, "0")
call VerifyScreenDump(buf, 'Test_popupwin_menu_filter_4', {}) call VerifyScreenDump(buf, 'Test_popupwin_menu_filter_4', {})
call term_sendkeys(buf, "x") " check that when the popup is closed in the filter the screen is redrawn
call term_sendkeys(buf, ":")
call VerifyScreenDump(buf, 'Test_popupwin_menu_filter_5', {})
call term_sendkeys(buf, "\<CR>")
" clean up " clean up
call StopVimInTerminal(buf) call StopVimInTerminal(buf)

View File

@ -757,6 +757,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1997,
/**/ /**/
1996, 1996,
/**/ /**/