comparison src/edit.c @ 34665:ca2da8e8fb53 v9.1.0215

patch 9.1.0215: Half-page scrolling does not support smooth-scrolling Commit: https://github.com/vim/vim/commit/5a2e3ec9ac72b6e644fea4ebba7e632498296e2f Author: Luuk van Baal <luukvbaal@gmail.com> Date: Thu Mar 28 10:07:29 2024 +0100 patch 9.1.0215: Half-page scrolling does not support smooth-scrolling Problem: Page-wise scrolling with Ctrl-D/Ctrl-U implements it's own logic to change the topline and cursor. More logic than necessary for scrolling with Ctrl-F/Ctrl-B was removed in patch 9.1.0211. Solution: Re-use the logic from Ctrl-E/Ctrl-Y/Ctrl-F/Ctrl-B while staying backward compatible as much as possible. Restore some of the logic that determined how many lines will be scrolled (Luuk van Baal) closes: #14316 Signed-off-by: Luuk van Baal <luukvbaal@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Mar 2024 10:15:08 +0100
parents c94ef9458309
children bfd2c0032686
comparison
equal deleted inserted replaced
34664:af61243e5aeb 34665:ca2da8e8fb53
4805 } 4805 }
4806 return; 4806 return;
4807 } 4807 }
4808 4808
4809 tpos = curwin->w_cursor; 4809 tpos = curwin->w_cursor;
4810 if (onepage(BACKWARD, 1L) == OK) 4810 if (pagescroll(BACKWARD, 1L, FALSE) == OK)
4811 { 4811 {
4812 start_arrow(&tpos); 4812 start_arrow(&tpos);
4813 can_cindent = TRUE; 4813 can_cindent = TRUE;
4814 } 4814 }
4815 else 4815 else
4862 } 4862 }
4863 return; 4863 return;
4864 } 4864 }
4865 4865
4866 tpos = curwin->w_cursor; 4866 tpos = curwin->w_cursor;
4867 if (onepage(FORWARD, 1L) == OK) 4867 if (pagescroll(FORWARD, 1L, FALSE) == OK)
4868 { 4868 {
4869 start_arrow(&tpos); 4869 start_arrow(&tpos);
4870 can_cindent = TRUE; 4870 can_cindent = TRUE;
4871 } 4871 }
4872 else 4872 else