diff options
Diffstat (limited to 'src/normal.c')
-rw-r--r-- | src/normal.c | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/src/normal.c b/src/normal.c index 955cd365a2..cfe60eec32 100644 --- a/src/normal.c +++ b/src/normal.c @@ -2474,65 +2474,6 @@ nv_scroll_line(cmdarg_T *cap) } /* - * Scroll "count" lines up or down, and redraw. - */ - void -scroll_redraw(int up, long count) -{ - linenr_T prev_topline = curwin->w_topline; - int prev_skipcol = curwin->w_skipcol; -#ifdef FEAT_DIFF - int prev_topfill = curwin->w_topfill; -#endif - linenr_T prev_lnum = curwin->w_cursor.lnum; - - if (up) - scrollup(count, TRUE); - else - scrolldown(count, TRUE); - if (get_scrolloff_value() > 0) - { - // Adjust the cursor position for 'scrolloff'. Mark w_topline as - // valid, otherwise the screen jumps back at the end of the file. - cursor_correct(); - check_cursor_moved(curwin); - curwin->w_valid |= VALID_TOPLINE; - - // If moved back to where we were, at least move the cursor, otherwise - // we get stuck at one position. Don't move the cursor up if the - // first line of the buffer is already on the screen - while (curwin->w_topline == prev_topline - && curwin->w_skipcol == prev_skipcol -#ifdef FEAT_DIFF - && curwin->w_topfill == prev_topfill -#endif - ) - { - if (up) - { - if (curwin->w_cursor.lnum > prev_lnum - || cursor_down(1L, FALSE) == FAIL) - break; - } - else - { - if (curwin->w_cursor.lnum < prev_lnum - || prev_topline == 1L - || cursor_up(1L, FALSE) == FAIL) - break; - } - // Mark w_topline as valid, otherwise the screen jumps back at the - // end of the file. - check_cursor_moved(curwin); - curwin->w_valid |= VALID_TOPLINE; - } - } - if (curwin->w_cursor.lnum != prev_lnum) - coladvance(curwin->w_curswant); - redraw_later(UPD_VALID); -} - -/* * Get the count specified after a 'z' command. Only the 'z<CR>', 'zl', 'zh', * 'z<Left>', and 'z<Right>' commands accept a count after 'z'. * Returns TRUE to process the 'z' command and FALSE to skip it. |