Mercurial > vim
comparison src/testdir/test_scroll_opt.vim @ 30799:ffa5492137c3 v9.0.0734
patch 9.0.0734: cursor position invalid when scrolling with 'smoothscroll'
Commit: https://github.com/vim/vim/commit/2fbabd238a94022c99506e920186a5b6cdf15426
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Oct 12 19:53:38 2022 +0100
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.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 12 Oct 2022 21:00:05 +0200 |
parents | fdc44acc3250 |
children | fa3aba805a34 |
comparison
equal
deleted
inserted
replaced
30798:a87c6faa01e3 | 30799:ffa5492137c3 |
---|---|
246 call VerifyScreenDump(buf, 'Test_smooth_long_9', {}) | 246 call VerifyScreenDump(buf, 'Test_smooth_long_9', {}) |
247 | 247 |
248 call StopVimInTerminal(buf) | 248 call StopVimInTerminal(buf) |
249 endfunc | 249 endfunc |
250 | 250 |
251 func Test_smoothscroll_one_long_line() | |
252 CheckScreendump | |
253 | |
254 let lines =<< trim END | |
255 vim9script | |
256 setline(1, 'with lots of text '->repeat(7)) | |
257 set smoothscroll scrolloff=0 | |
258 END | |
259 call writefile(lines, 'XSmoothOneLong', 'D') | |
260 let buf = RunVimInTerminal('-S XSmoothOneLong', #{rows: 6, cols: 40}) | |
261 call VerifyScreenDump(buf, 'Test_smooth_one_long_1', {}) | |
262 | |
263 call term_sendkeys(buf, "\<C-E>") | |
264 call VerifyScreenDump(buf, 'Test_smooth_one_long_2', {}) | |
265 | |
266 call term_sendkeys(buf, "0") | |
267 call VerifyScreenDump(buf, 'Test_smooth_one_long_1', {}) | |
268 | |
269 call StopVimInTerminal(buf) | |
270 endfunc | |
271 | |
251 | 272 |
252 " vim: shiftwidth=2 sts=2 expandtab | 273 " vim: shiftwidth=2 sts=2 expandtab |