Patch 8.1.0849
Problem: Cursorline highlight is not always updated.
Solution: Set w_last_cursorline when redrawing. Fix resetting cursor flags
when using the popup menu.
Files: src/screen.c, src/popupmnu.c, src/testdir/test_highlight.vim,
src/testdir/dumps/Test_cursorline_yank_01.dump
*** ../vim-8.1.0848/src/screen.c 2019-01-26 17:28:22.232599086 +0100
--- src/screen.c 2019-01-30 21:37:50.308437559 +0100
***************
*** 3712,3717 ****
--- 3712,3718 ----
{
line_attr = HL_ATTR(HLF_CUL);
area_highlighting = TRUE;
+ wp->w_last_cursorline = wp->w_cursor.lnum;
}
#endif
*** ../vim-8.1.0848/src/popupmnu.c 2019-01-17 21:09:02.045706371 +0100
--- src/popupmnu.c 2019-01-30 21:21:51.161694814 +0100
***************
*** 368,374 ****
// Update the cursor position to be able to compute the popup menu
// position. The cursor line length may have changed because of the
// inserted completion.
! curwin->w_valid &= VALID_CROW|VALID_CHEIGHT;
validate_cursor();
}
--- 368,374 ----
// Update the cursor position to be able to compute the popup menu
// position. The cursor line length may have changed because of the
// inserted completion.
! curwin->w_valid &= ~(VALID_CROW|VALID_CHEIGHT);
validate_cursor();
}
*** ../vim-8.1.0848/src/testdir/test_highlight.vim 2019-01-09
23:00:57.997176121 +0100
--- src/testdir/test_highlight.vim 2019-01-30 21:36:18.289017109 +0100
***************
*** 1,6 ****
--- 1,7 ----
" Tests for ":highlight" and highlighting.
source view_util.vim
+ source screendump.vim
func Test_highlight()
" basic test if ":highlight" doesn't crash
***************
*** 129,138 ****
endfunc
func Test_highlight_eol_with_cursorline_vertsplit()
- if !has('vertsplit')
- return
- endif
-
let [hiCursorLine, hi_ul, hi_bg] = HiCursorLine()
call NewWindow('topleft 5', 5)
--- 130,135 ----
***************
*** 533,535 ****
--- 530,554 ----
set t_Co=0
redraw
endfunc
+
+ func Test_cursorline_after_yank()
+ if !CanRunVimInTerminal()
+ return
+ endif
+
+ call writefile([
+ \ 'set cul rnu',
+ \ 'call setline(1, ["","1","2","3",""])',
+ \ ], 'Xtest_cursorline_yank')
+ let buf = RunVimInTerminal('-S Xtest_cursorline_yank', {'rows': 8})
+ call term_wait(buf)
+ call term_sendkeys(buf, "Gy3k")
+ call term_wait(buf)
+ call term_sendkeys(buf, "jj")
+
+ call VerifyScreenDump(buf, 'Test_cursorline_yank_01', {})
+
+ " clean up
+ call StopVimInTerminal(buf)
+ call delete('Xtest_cursorline_yank')
+ endfunc
*** ../vim-8.1.0848/src/testdir/dumps/Test_cursorline_yank_01.dump
2019-01-30 21:40:03.087583983 +0100
--- src/testdir/dumps/Test_cursorline_yank_01.dump 2019-01-30
21:37:58.852383208 +0100
***************
*** 0 ****
--- 1,8 ----
+ | +0#af5f00255#ffffff0@1|3| | +0#0000000&@70
+ | +0#af5f00255&@1|2| |1+0#0000000&| @69
+ | +0#af5f00255&@1|1| |2+0#0000000&| @69
+ | +0#af5f00255&@1|0| >3+8#0000000&| @69
+ | +0#af5f00255&@1|1| | +0#0000000&@70
+ |~+0#4040ff13&| @73
+ |~| @73
+ |4+0#0000000&| |l|i|n|e|s| |y|a|n|k|e|d| @42|4|,|1| @10|A|l@1|
*** ../vim-8.1.0848/src/version.c 2019-01-30 21:00:05.867377219 +0100
--- src/version.c 2019-01-30 21:39:38.139745728 +0100
***************
*** 785,786 ****
--- 785,788 ----
{ /* Add new patch number below this line */
+ /**/
+ 849,
/**/
--
5 out of 4 people have trouble with fractions.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.