Mercurial > vim
diff src/change.c @ 28363:a9a56b567709 v8.2.4707
patch 8.2.4707: redrawing could be a bit more efficient
Commit: https://github.com/vim/vim/commit/8c9796085071950f9a03ca0fe116608e4f86aac2
Author: zeertzjq <zeertzjq@outlook.com>
Date: Thu Apr 7 15:08:01 2022 +0100
patch 8.2.4707: redrawing could be a bit more efficient
Problem: Redrawing could be a bit more efficient.
Solution: Optimize redrawing. (closes https://github.com/vim/vim/issues/10105)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 07 Apr 2022 16:15:03 +0200 |
parents | 3f6c0a5c99bb |
children | ef62a0ea2a78 |
line wrap: on
line diff
--- a/src/change.c +++ b/src/change.c @@ -640,9 +640,13 @@ changed_common( if (hasAnyFolding(wp)) set_topline(wp, wp->w_topline); #endif - // Relative numbering may require updating more. + // If lines have been added or removed, relative numbering always + // requires a redraw. if (wp->w_p_rnu && xtra != 0) - redraw_win_later(wp, SOME_VALID); + { + wp->w_last_cursor_lnum_rnu = 0; + redraw_win_later(wp, VALID); + } #ifdef FEAT_SYN_HL // Cursor line highlighting probably need to be updated with // "VALID" if it's below the change.