From e6f7e038b8bbca487e78ebfc6fe21d6852330623 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Fri, 14 Oct 2022 23:08:00 +0800 Subject: fix(completion): set pum_size even if ext_popupmenu is used (#20648) This allows CompleteChanged event to get the correct `v:event.size`. It should be harmless and more consistent to also set `pum_array`. --- src/nvim/popupmenu.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/nvim/popupmenu.c b/src/nvim/popupmenu.c index 74376c8b8a..3a3f966d10 100644 --- a/src/nvim/popupmenu.c +++ b/src/nvim/popupmenu.c @@ -264,12 +264,15 @@ void pum_display(pumitem_T *array, int size, int selected, bool array_changed, i pum_row = above_row; pum_height = pum_win_row - above_row; } + + pum_array = array; + // Set "pum_size" before returning so that pum_set_event_info() gets the correct size. + pum_size = size; + if (pum_external) { return; } - pum_array = array; - pum_size = size; pum_compute_size(); int max_width = pum_base_width; -- cgit