vim-patch:9.0.1016: screenpos() does not count filler lines for diff mode

Problem:    screenpos() does not count filler lines for diff mode.
Solution:   Add filler lines. (closes 11658)

1cb16c3a20

Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
zeertzjq
2022-12-06 08:00:30 +08:00
parent 0909d987fe
commit 52b3e8bdef
2 changed files with 18 additions and 0 deletions

View File

@@ -926,6 +926,8 @@ void textpos2screenpos(win_T *wp, pos_T *pos, int *rowp, int *scolp, int *ccolp,
linenr_T lnum = pos->lnum;
is_folded = hasFoldingWin(wp, lnum, &lnum, NULL, true, NULL);
row = plines_m_win(wp, wp->w_topline, lnum - 1) + 1;
// Add filler lines above this buffer line.
row += win_get_fill(wp, lnum);
visible_row = true;
} else if (!local || pos->lnum < wp->w_topline) {
row = 0;