]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.0.1564: display moves up and down with 'incsearch' and 'smoothscroll' v9.0.1564
authorLuuk van Baal <luukvbaal@gmail.com>
Thu, 18 May 2023 12:26:57 +0000 (13:26 +0100)
committerBram Moolenaar <Bram@vim.org>
Thu, 18 May 2023 12:26:57 +0000 (13:26 +0100)
Problem:    Display moves up and down with 'incsearch' and 'smoothscroll'.
Solution:   Do not check if w_skipcol changed. (Luuk van Baal, closes #12410,
            closes #12409)

src/move.c
src/testdir/dumps/Test_smooth_wrap_2.dump
src/testdir/dumps/Test_smooth_wrap_4.dump
src/version.c

index 93c101b794e91a4faa8c801082b532139428b515..3f6802ac7f30a9842574f0d980cab344f200ea08 100644 (file)
@@ -312,7 +312,6 @@ update_topline(void)
        *so_ptr = mouse_dragging - 1;
 
     linenr_T old_topline = curwin->w_topline;
-    colnr_T old_skipcol = curwin->w_skipcol;
 #ifdef FEAT_DIFF
     int old_topfill = curwin->w_topfill;
 #endif
@@ -517,8 +516,8 @@ update_topline(void)
        dollar_vcol = -1;
        redraw_later(UPD_VALID);
 
-       // Only reset w_skipcol if it was not just set to make cursor visible.
-       if (curwin->w_skipcol == old_skipcol)
+       // When 'smoothscroll' is not set, should reset w_skipcol.
+       if (!curwin->w_p_sms)
            reset_skipcol();
 
        // May need to set w_skipcol when cursor in w_topline.
index 65a357dbb1c94559d7f80154028638b16b96419b..fb0a981a8d1b6405514020dab7279f88f4b3bfa5 100644 (file)
@@ -1,8 +1,8 @@
-|<+0#4040ff13#ffffff0@2|h+0#0000000&| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
-|L|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
+|L+0&#ffffff0|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
 |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| 
 |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
 >L|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
 |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| 
 |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
-@22|4|,|1| @10|2|5|%| 
+|@+0#4040ff13&@2| @36
+| +0#0000000&@21|4|,|1| @10|4|0|%| 
index c23f494dcdde14a0d5e39f5adf127341661509f7..1c42f64f48a60659b19d5bc47a167da5f0449828 100644 (file)
@@ -2,7 +2,7 @@
 |L|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
 |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| 
 |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
->L|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
+|L|i|n|e| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| 
 |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| 
-|w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
+>w|i|t|h| |s|o|m|e| |t|e|x|t| |w|i|t|h| |s|o|m|e| |t|e|x|t| @10
 @22|7|,|1| @10|B|o|t| 
index 0e1e326168e0e99390949b872ab329fcdb536740..6cf7de948efe0e7dfd7b24e21cd7aa0d79b6f7f1 100644 (file)
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1564,
 /**/
     1563,
 /**/