diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-08-21 14:33:57 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-08-21 14:33:57 +0100 |
commit | b82a2ab8ad7af52a327cdba013ec433f7caf550d (patch) | |
tree | c850b0d51e81d5a21bee633f576ac02d61429d98 | |
parent | 474ad390ccb8bbeb53848122829e04c52f0349ce (diff) | |
download | vim-git-b82a2ab8ad7af52a327cdba013ec433f7caf550d.tar.gz |
patch 9.0.0236: popup menu not removed when 'wildmenu' reset while visiblev9.0.0236
Problem: Popup menu not removed when 'wildmenu' reset while it is visible.
Solution: Do not check p_wmnu, only pum_visible(). (closes #10953)
-rw-r--r-- | src/cmdexpand.c | 2 | ||||
-rw-r--r-- | src/testdir/test_cmdline.vim | 10 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 13 insertions, 1 deletions
diff --git a/src/cmdexpand.c b/src/cmdexpand.c index fb329a57d..cdf83955c 100644 --- a/src/cmdexpand.c +++ b/src/cmdexpand.c @@ -367,7 +367,7 @@ void cmdline_pum_display(void) */ int cmdline_pum_active(void) { - return p_wmnu && pum_visible() && compl_match_array != NULL; + return pum_visible() && compl_match_array != NULL; } /* diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim index 521312a8b..be688e396 100644 --- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -3234,4 +3234,14 @@ func Test_cmdline_redraw_tabline() call delete('Xcmdline_redraw_tabline') endfunc +func Test_wildmenu_pum_disable_while_shown() + set wildoptions=pum + set wildmenu + cnoremap <F2> <Cmd>set nowildmenu<CR> + call feedkeys(":sign \<Tab>\<F2>\<Esc>", 'tx') + call assert_equal(0, pumvisible()) + cunmap <F2> + set wildoptions& wildmenu& +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index 616f748c4..c12d3c906 100644 --- a/src/version.c +++ b/src/version.c @@ -732,6 +732,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 236, +/**/ 235, /**/ 234, |