diff options
author | Jurica Bradaric <jbradaric@gmail.com> | 2016-02-09 23:44:16 +0100 |
---|---|---|
committer | Jurica Bradaric <jbradaric@gmail.com> | 2016-02-09 23:51:28 +0100 |
commit | 37288e522a0efae191b85ae5c73996cefa74315e (patch) | |
tree | 47c5260af90b5dc27a01eabca8e558bd112ca323 | |
parent | 84281bf675f77f417d26a68611406ef43fd82f7f (diff) | |
download | rneovim-37288e522a0efae191b85ae5c73996cefa74315e.tar.gz rneovim-37288e522a0efae191b85ae5c73996cefa74315e.tar.bz2 rneovim-37288e522a0efae191b85ae5c73996cefa74315e.zip |
vim-patch:7.4.853
Problem: "zt" in diff mode does not always work properly. (Gary Johnson)
Solution: Don't count filler lines twice. (Christian Brabandt)
https://github.com/vim/vim/commit/cf619daa8e0ef9a335f27f65eb74e422a17d4f92
-rw-r--r-- | src/nvim/move.c | 15 | ||||
-rw-r--r-- | src/nvim/version.c | 2 |
2 files changed, 11 insertions, 6 deletions
diff --git a/src/nvim/move.c b/src/nvim/move.c index eb55397511..64f7b27cf2 100644 --- a/src/nvim/move.c +++ b/src/nvim/move.c @@ -1288,9 +1288,10 @@ void scroll_cursor_top(int min_scroll, int always) * - at least 'scrolloff' lines above and below the cursor */ validate_cheight(); - int used = curwin->w_cline_height; - if (curwin->w_cursor.lnum < curwin->w_topline) + int used = curwin->w_cline_height; // includes filler lines above + if (curwin->w_cursor.lnum < curwin->w_topline) { scrolled = used; + } if (hasFolding(curwin->w_cursor.lnum, &top, &bot)) { --top; @@ -1301,9 +1302,13 @@ void scroll_cursor_top(int min_scroll, int always) } new_topline = top + 1; - /* count filler lines of the cursor window as context */ - int extra = diff_check_fill(curwin, curwin->w_cursor.lnum); - used += extra; + // used already contains the number of filler lines above, don't add it + // again. + // TODO: if filler lines above new top are to be considered as context for + // the current window, leave next statement commented, else hide filler + // lines above cursor line, by adding them to extra + // int extra += diff_check_fill(curwin, curwin->w_cursor.lnum); + int extra = 0; /* * Check if the lines from "top" to "bot" fit in the window. If they do, diff --git a/src/nvim/version.c b/src/nvim/version.c index 487f3fc27b..74b45cea53 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -435,7 +435,7 @@ static int included_patches[] = { // 856, // 855 NA // 854 NA - // 853, + 853, // 852 NA // 851 NA // 850 NA |