diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2021-03-22 23:27:59 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-22 23:27:59 +0100 |
commit | 1df1098b0c54258a41c4f97c9d3131d061a5b206 (patch) | |
tree | 315d116677afd7dfbfbc6858949e66e574c81aee /src/nvim/mouse.c | |
parent | 6fef28da58a217a45d2d6e5b68ecfddd1eb84c29 (diff) | |
parent | 243820ebd0d9df7664311c8bf79d879bf23eb742 (diff) | |
download | rneovim-1df1098b0c54258a41c4f97c9d3131d061a5b206.tar.gz rneovim-1df1098b0c54258a41c4f97c9d3131d061a5b206.tar.bz2 rneovim-1df1098b0c54258a41c4f97c9d3131d061a5b206.zip |
Merge pull request #13998 from bfredl/border
floats: add MS-DOS mode (borders)
Diffstat (limited to 'src/nvim/mouse.c')
-rw-r--r-- | src/nvim/mouse.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/nvim/mouse.c b/src/nvim/mouse.c index 9dc85797b4..fa9787a3ac 100644 --- a/src/nvim/mouse.c +++ b/src/nvim/mouse.c @@ -470,21 +470,21 @@ static win_T *mouse_find_grid_win(int *gridp, int *rowp, int *colp) *gridp = DEFAULT_GRID_HANDLE; } else if (*gridp > 1) { win_T *wp = get_win_by_grid_handle(*gridp); - if (wp && wp->w_grid.chars + if (wp && wp->w_grid_alloc.chars && !(wp->w_floating && !wp->w_float_config.focusable)) { - *rowp = MIN(*rowp, wp->w_grid.Rows-1); - *colp = MIN(*colp, wp->w_grid.Columns-1); + *rowp = MIN(*rowp-wp->w_grid.row_offset, wp->w_grid.Rows-1); + *colp = MIN(*colp-wp->w_grid.col_offset, wp->w_grid.Columns-1); return wp; } } else if (*gridp == 0) { ScreenGrid *grid = ui_comp_mouse_focus(*rowp, *colp); FOR_ALL_WINDOWS_IN_TAB(wp, curtab) { - if (&wp->w_grid != grid) { + if (&wp->w_grid_alloc != grid) { continue; } *gridp = grid->handle; - *rowp -= grid->comp_row; - *colp -= grid->comp_col; + *rowp -= grid->comp_row+wp->w_grid.row_offset; + *colp -= grid->comp_col+wp->w_grid.col_offset; return wp; } @@ -729,7 +729,7 @@ int mouse_check_fold(void) if (wp && mouse_row >= 0 && mouse_row < Rows && mouse_col >= 0 && mouse_col <= Columns) { int multigrid = ui_has(kUIMultigrid); - ScreenGrid *gp = multigrid ? &wp->w_grid : &default_grid; + ScreenGrid *gp = multigrid ? &wp->w_grid_alloc : &default_grid; int fdc = win_fdccol_count(wp); int row = multigrid && mouse_grid == 0 ? click_row : mouse_row; int col = multigrid && mouse_grid == 0 ? click_col : mouse_col; |