diff src/edit.c @ 33870:8f65cb02af21 v9.0.2145

patch 9.0.2145: wrong scrolling in insert mode with smoothscroll Commit: https://github.com/vim/vim/commit/5b4d1fcbf06757bae32a894871b9a649c84eba7f Author: zeertzjq <zeertzjq@outlook.com> Date: Sun Dec 3 17:54:10 2023 +0100 patch 9.0.2145: wrong scrolling in insert mode with smoothscroll Problem: Wrong scrolling in Insert mode with 'smoothscroll' at the bottom of the window. Solution: Don't use set_topline() when 'smoothscroll' is set. fixes: #13612 closes: #13613 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sun, 10 Dec 2023 15:16:09 +0100
parents 46cd1fc257de
children 1629cc65d78d
line wrap: on
line diff
--- a/src/edit.c
+++ b/src/edit.c
@@ -501,9 +501,12 @@ edit(
 	 * something.
 	 * Don't do this when the topline changed already, it has
 	 * already been adjusted (by insertchar() calling open_line())).
+	 * Also don't do this when 'smoothscroll' is set, as the window should
+	 * then be scrolled by screen lines.
 	 */
 	if (curbuf->b_mod_set
 		&& curwin->w_p_wrap
+		&& !curwin->w_p_sms
 		&& !did_backspace
 		&& curwin->w_topline == old_topline
 #ifdef FEAT_DIFF