diff options
author | Yatao Li <yatli@microsoft.com> | 2020-03-22 17:53:45 +0800 |
---|---|---|
committer | Yatao Li <yatli@microsoft.com> | 2020-04-28 01:54:16 +0800 |
commit | e34684b2ad02e759dec39c0f0958c7882120ecdc (patch) | |
tree | cc2024053865052d34e7e8ebebbd45a4064d29ee /src/nvim/ui.c | |
parent | d372c804aa33a272f6659f6d08d5dfee704d30d9 (diff) | |
download | rneovim-e34684b2ad02e759dec39c0f0958c7882120ecdc.tar.gz rneovim-e34684b2ad02e759dec39c0f0958c7882120ecdc.tar.bz2 rneovim-e34684b2ad02e759dec39c0f0958c7882120ecdc.zip |
api/ui: simplify popup menu position get/set logic; fix test
Diffstat (limited to 'src/nvim/ui.c')
-rw-r--r-- | src/nvim/ui.c | 29 |
1 files changed, 7 insertions, 22 deletions
diff --git a/src/nvim/ui.c b/src/nvim/ui.c index 0a8474ff82..685da77b39 100644 --- a/src/nvim/ui.c +++ b/src/nvim/ui.c @@ -235,34 +235,19 @@ int ui_pum_get_height(void) return pum_height; } -void ui_pum_get_pos(double *pwidth, double *pheight, double *prow, double *pcol) +bool ui_pum_get_pos(double *pwidth, double *pheight, double *prow, double *pcol) { - double w = 0.0, h = 0.0, r = 0.0, c = 0.0; - bool found = false; for (size_t i = 1; i < ui_count; i++) { if (!uis[i]->pum_pos) { continue; } - w = uis[i]->pum_width; - h = uis[i]->pum_height; - r = uis[i]->pum_row; - c = uis[i]->pum_col; - found = true; - break; - } - if (found) { - *pwidth = w; - *pheight = h; - *prow = r; - *pcol = c; - } else { - int iw, ih, ir, ic; - pum_get_internal_pos(&iw, &ih, &ir, &ic); - *pwidth = (double)iw; - *pheight = (double)ih; - *prow = (double)ir; - *pcol = (double)ic; + *pwidth = uis[i]->pum_width; + *pheight = uis[i]->pum_height; + *prow = uis[i]->pum_row; + *pcol = uis[i]->pum_col; + return true; } + return false; } static void ui_refresh_event(void **argv) |