aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2019-09-28 21:00:27 +0200
committerBjörn Linse <bjorn.linse@gmail.com>2019-09-28 21:00:27 +0200
commit0636b25f28e408c8b16026354db7edfef079614a (patch)
treefbf6e3953400b68d293bd7387f36b95da69d2fe4
parente933426299b44db6715f6f61ab76aee57478110e (diff)
downloadrneovim-0636b25f28e408c8b16026354db7edfef079614a.tar.gz
rneovim-0636b25f28e408c8b16026354db7edfef079614a.tar.bz2
rneovim-0636b25f28e408c8b16026354db7edfef079614a.zip
cmdline: wildmenumode() should be true with wildoptions+=pum
-rw-r--r--src/nvim/eval.c3
-rw-r--r--test/functional/ui/popupmenu_spec.lua3
2 files changed, 5 insertions, 1 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 2ddcd389fe..cb1dd1d631 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -18845,8 +18845,9 @@ static void f_visualmode(typval_T *argvars, typval_T *rettv, FunPtr fptr)
*/
static void f_wildmenumode(typval_T *argvars, typval_T *rettv, FunPtr fptr)
{
- if (wild_menu_showing)
+ if (wild_menu_showing || ((State & CMDLINE) && pum_visible())) {
rettv->vval.v_number = 1;
+ }
}
/// "win_findbuf()" function
diff --git a/test/functional/ui/popupmenu_spec.lua b/test/functional/ui/popupmenu_spec.lua
index ae2136f451..37eb550835 100644
--- a/test/functional/ui/popupmenu_spec.lua
+++ b/test/functional/ui/popupmenu_spec.lua
@@ -516,6 +516,7 @@ describe('ui/ext_popupmenu', function()
{1:~ }|
:sign ^ |
]])
+ eq(0, funcs.wildmenumode())
feed('<tab>')
screen:expect{grid=[[
@@ -530,6 +531,7 @@ describe('ui/ext_popupmenu', function()
{1:~ }|
:sign define^ |
]], popupmenu={items=wild_expected, pos=0, anchor={1, 9, 6}}}
+ eq(1, funcs.wildmenumode())
feed('<left>')
screen:expect{grid=[[
@@ -589,6 +591,7 @@ describe('ui/ext_popupmenu', function()
:sign unplace^ |
]], popupmenu={items=wild_expected, pos=5, anchor={1, 9, 6}}}
feed('<esc>')
+ eq(0, funcs.wildmenumode())
-- check positioning with multibyte char in pattern
command("e långfile1")