aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/funcs.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-08-21 15:23:32 +0800
committerGitHub <noreply@github.com>2023-08-21 15:23:32 +0800
commitcc35352f65f823259675f84a915ee03d2423913e (patch)
treea84e8e856d9642e89c08a37b984dc2a3ecaf5ab0 /src/nvim/eval/funcs.c
parent3b0515e674f279d6504a0fc055808cdf01eead99 (diff)
downloadrneovim-cc35352f65f823259675f84a915ee03d2423913e.tar.gz
rneovim-cc35352f65f823259675f84a915ee03d2423913e.tar.bz2
rneovim-cc35352f65f823259675f84a915ee03d2423913e.zip
vim-patch:8.1.2062: the mouse code is spread out (#24817)
Problem: The mouse code is spread out. Solution: Move all the mouse code to mouse.c. (Yegappan Lakshmanan, closes vim/vim#4959) https://github.com/vim/vim/commit/b20b9e14ddd8db111e886ad0494e15b955159426 Also move getmousepos() there. N/A patches for version.c: vim-patch:8.1.2070: mouse code is spread out Problem: Mouse code is spread out. Solution: Move mouse terminal code parsing to mouse.c. (Yegappan Lakshmanan, closes vim/vim#4966) https://github.com/vim/vim/commit/b8ff5c271ee5dcef6f63436b77e228e062ff9a0e Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/eval/funcs.c')
-rw-r--r--src/nvim/eval/funcs.c41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c
index 3c232a7163..755df761e7 100644
--- a/src/nvim/eval/funcs.c
+++ b/src/nvim/eval/funcs.c
@@ -2750,47 +2750,6 @@ static void f_getmarklist(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
get_buf_local_marks(buf, rettv->vval.v_list);
}
-/// "getmousepos()" function
-static void f_getmousepos(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
-{
- int row = mouse_row;
- int col = mouse_col;
- int grid = mouse_grid;
- varnumber_T winid = 0;
- varnumber_T winrow = 0;
- varnumber_T wincol = 0;
- linenr_T lnum = 0;
- varnumber_T column = 0;
-
- tv_dict_alloc_ret(rettv);
- dict_T *d = rettv->vval.v_dict;
-
- tv_dict_add_nr(d, S_LEN("screenrow"), (varnumber_T)mouse_row + 1);
- tv_dict_add_nr(d, S_LEN("screencol"), (varnumber_T)mouse_col + 1);
-
- win_T *wp = mouse_find_win(&grid, &row, &col);
- if (wp != NULL) {
- int height = wp->w_height + wp->w_hsep_height + wp->w_status_height;
- // The height is adjusted by 1 when there is a bottom border. This is not
- // necessary for a top border since `row` starts at -1 in that case.
- if (row < height + wp->w_border_adj[2]) {
- winid = wp->handle;
- winrow = row + 1 + wp->w_winrow_off; // Adjust by 1 for top border
- wincol = col + 1 + wp->w_wincol_off; // Adjust by 1 for left border
- if (row >= 0 && row < wp->w_height && col >= 0 && col < wp->w_width) {
- (void)mouse_comp_pos(wp, &row, &col, &lnum);
- col = vcol2col(wp, lnum, col);
- column = col + 1;
- }
- }
- }
- tv_dict_add_nr(d, S_LEN("winid"), winid);
- tv_dict_add_nr(d, S_LEN("winrow"), winrow);
- tv_dict_add_nr(d, S_LEN("wincol"), wincol);
- tv_dict_add_nr(d, S_LEN("line"), (varnumber_T)lnum);
- tv_dict_add_nr(d, S_LEN("column"), column);
-}
-
/// "getpid()" function
static void f_getpid(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
{