aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/move.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-02-05 11:08:52 +0800
committerGitHub <noreply@github.com>2024-02-05 11:08:52 +0800
commit18e62c1bdbbb6b93bfb74d974bc511fc4c03748e (patch)
tree4643f88df3693b8eb5fe9ecd9e40a4b78fc435ec /src/nvim/move.c
parent1ed6b9cd2c04bf015b7e053ee5ea778634141b35 (diff)
downloadrneovim-18e62c1bdbbb6b93bfb74d974bc511fc4c03748e.tar.gz
rneovim-18e62c1bdbbb6b93bfb74d974bc511fc4c03748e.tar.bz2
rneovim-18e62c1bdbbb6b93bfb74d974bc511fc4c03748e.zip
perf(redraw): only redraw Visual area when cursor has moved (#27340)
Diffstat (limited to 'src/nvim/move.c')
-rw-r--r--src/nvim/move.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/nvim/move.c b/src/nvim/move.c
index dd64a7ff2b..ea35813d21 100644
--- a/src/nvim/move.c
+++ b/src/nvim/move.c
@@ -147,6 +147,9 @@ static void redraw_for_cursorcolumn(win_T *wp)
// When 'cursorcolumn' is set or "CurSearch" is in use
// need to redraw with UPD_SOME_VALID.
redraw_later(wp, UPD_SOME_VALID);
+ } else if (VIsual_active) {
+ // In Visual mode need to redraw with UPD_INVERTED.
+ redraw_later(wp, UPD_INVERTED);
} else if (wp->w_p_cul && (wp->w_p_culopt_flags & CULOPT_SCRLINE)) {
// When 'cursorlineopt' contains "screenline" need to redraw with UPD_VALID.
redraw_later(wp, UPD_VALID);