Mercurial > vim
diff src/evalfunc.c @ 17756:a7afcea6f40a v8.1.1875
patch 8.1.1875: cannot get size and position of the popup menu
commit https://github.com/vim/vim/commit/e9bd57286a5cbb0e1ec18b5d194dc4af1bda9f3a
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Aug 17 19:36:06 2019 +0200
patch 8.1.1875: cannot get size and position of the popup menu
Problem: Cannot get size and position of the popup menu.
Solution: Add pum_getpos(). (Ben Jackson, closes https://github.com/vim/vim/issues/4827)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 17 Aug 2019 19:45:03 +0200 |
parents | 4a3dca734d36 |
children | 545119cd5554 |
line wrap: on
line diff
--- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -234,6 +234,7 @@ static void f_pow(typval_T *argvars, typ #endif static void f_prevnonblank(typval_T *argvars, typval_T *rettv); static void f_printf(typval_T *argvars, typval_T *rettv); +static void f_pum_getpos(typval_T *argvars, typval_T *rettv); static void f_pumvisible(typval_T *argvars, typval_T *rettv); #ifdef FEAT_PYTHON3 static void f_py3eval(typval_T *argvars, typval_T *rettv); @@ -741,6 +742,7 @@ static funcentry_T global_functions[] = {"prop_type_get", 1, 2, 0, f_prop_type_get}, {"prop_type_list", 0, 1, 0, f_prop_type_list}, #endif + {"pum_getpos", 0, 0, 0, f_pum_getpos}, {"pumvisible", 0, 0, 0, f_pumvisible}, #ifdef FEAT_PYTHON3 {"py3eval", 1, 1, 0, f_py3eval}, @@ -7961,6 +7963,19 @@ f_printf(typval_T *argvars, typval_T *re } /* + * "pum_getpos()" function + */ + static void +f_pum_getpos(typval_T *argvars UNUSED, typval_T *rettv UNUSED) +{ + if (rettv_dict_alloc(rettv) != OK) + return; +#ifdef FEAT_INS_EXPAND + pum_set_event_info(rettv->vval.v_dict); +#endif +} + +/* * "pumvisible()" function */ static void