patch 9.0.1561: display wrong when moving cursor to above the top line
Problem: Display wrong when moving cursor to above the top line and
'smoothscroll' is set.
Solution: Call adjust_skipcol() in more places and make it work better.
(Luuk van Baal, closes #12395)
diff --git a/src/move.c b/src/move.c
index d969de2..93c101b 100644
--- a/src/move.c
+++ b/src/move.c
@@ -1960,12 +1960,14 @@
curwin->w_skipcol -= width2;
else
curwin->w_skipcol -= width1;
- redraw_later(UPD_NOT_VALID);
scrolled = TRUE;
- validate_virtcol();
}
if (scrolled)
+ {
+ validate_virtcol();
+ redraw_later(UPD_NOT_VALID);
return; // don't scroll in the other direction now
+ }
int col = curwin->w_virtcol - curwin->w_skipcol + scrolloff_cols;
int row = 0;