diff options
author | Luuk van Baal <luukvbaal@gmail.com> | 2023-04-26 22:32:38 +0200 |
---|---|---|
committer | Luuk van Baal <luukvbaal@gmail.com> | 2023-05-02 13:11:47 +0200 |
commit | bf12a85a69f03bb5321fe0a32e1a9ac81f31750c (patch) | |
tree | a14582f8112b02baff0b996d2375357cfb6bd1f6 /test/functional/legacy | |
parent | 36c98b47a3526dc61d149f951f8b8e3a677c26eb (diff) | |
download | rneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.tar.gz rneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.tar.bz2 rneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.zip |
vim-patch:9.0.0734: cursor position invalid when scrolling with 'smoothscroll'
Problem: Cursor position invalid when scrolling with 'smoothscroll' set.
(Ernie Rael)
Solution: Add w_valid_skipcol and clear flags when it changes. Adjust
w_skipcol after moving the cursor.
https://github.com/vim/vim/commit/2fbabd238a94022c99506e920186a5b6cdf15426
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'test/functional/legacy')
-rw-r--r-- | test/functional/legacy/scroll_opt_spec.lua | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/test/functional/legacy/scroll_opt_spec.lua b/test/functional/legacy/scroll_opt_spec.lua index be7d324908..a5660ae4d2 100644 --- a/test/functional/legacy/scroll_opt_spec.lua +++ b/test/functional/legacy/scroll_opt_spec.lua @@ -428,14 +428,36 @@ describe('smoothscroll', function() | ]]) -- 'scrolloff' set to 2, scrolling down, cursor moves screen line up - feed('<C-E>gjgj<C-Y>') + feed('<C-E>gj<C-Y>') + screen:expect_unchanged() + end) + + -- oldtest: Test_smoothscroll_one_long_line() + it("scrolls correctly when moving the cursor", function() + screen:try_resize(40, 6) + exec([[ + call setline(1, 'with lots of text '->repeat(7)) + set smoothscroll scrolloff=0 + ]]) + local s1 = [[ + ^with lots of text with lots of text with| + lots of text with lots of text with lot| + s of text with lots of text with lots of| + text | + ~ | + | + ]] + screen:expect(s1) + feed('<C-E>') screen:expect([[ - <<<of text with lots of text with lots o| - f text with lots of text with lots of te| - xt with l^ots of text with lots of text w| - ith lots of text with lots of text with | - lots of text with lots of text with lots| + <<<ts of text with lots of text with lot| + ^s of text with lots of text with lots of| + text | + ~ | + ~ | | ]]) + feed('0') + screen:expect(s1) end) end) |