patch 9.0.1635: error message is cleared when removing mode message
Problem: Error message is cleared when removing mode message. Solution: Also reset flags when the message is further down.
This commit is contained in:
@ -1643,7 +1643,7 @@ msg_outtrans_len_attr(char_u *msgstr, int len, int attr)
|
|||||||
|
|
||||||
// When drawing over the command line no need to clear it later or remove
|
// When drawing over the command line no need to clear it later or remove
|
||||||
// the mode message.
|
// the mode message.
|
||||||
if (msg_row == cmdline_row && msg_col == 0)
|
if (msg_row >= cmdline_row && msg_col == 0)
|
||||||
{
|
{
|
||||||
clear_cmdline = FALSE;
|
clear_cmdline = FALSE;
|
||||||
mode_displayed = FALSE;
|
mode_displayed = FALSE;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
>o+0&#ffffff0|n|e| @71
|
>o+0&#ffffff0|n|e| @71
|
||||||
|t|w|o| @71
|
|N|o|S|u|c|h|F|i|l|e| @64
|
||||||
|t|h|r|e@1| @69
|
|t|h|r|e@1| @69
|
||||||
|~+0#4040ff13&| @73
|
|~+0#4040ff13&| @73
|
||||||
|~| @73
|
|~| @73
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
>o+0&#ffffff0|n|e| @71
|
>o+0&#ffffff0|n|e| @71
|
||||||
|t|w|o| @71
|
|N|o|S|u|c|h|F|i|l|e| @64
|
||||||
|t|h|r|e@1| @69
|
|t|h|r|e@1| @69
|
||||||
|~+0#4040ff13&| @73
|
|~+0#4040ff13&| @73
|
||||||
|~| @73
|
|~| @73
|
||||||
|
|||||||
10
src/testdir/dumps/Test_message_not_cleared_after_mode_3.dump
Normal file
10
src/testdir/dumps/Test_message_not_cleared_after_mode_3.dump
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
|o+0&#ffffff0|n|e| @71
|
||||||
|
|N|o|S|u|c|h|F|i|l>e| @64
|
||||||
|
|t|h|r|e@1| @69
|
||||||
|
|~+0#4040ff13&| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
| +0#0000000&@74
|
||||||
|
|E+0#ffffff16#e000002|4@1|7|:| |C|a|n|'|t| |f|i|n|d| |f|i|l|e| |"|N|o|S|u|c|h|F|i|l|e|"| |i|n| |p|a|t|h| +0#0000000#ffffff0@14|2|,|1|0| @9|A|l@1|
|
||||||
@ -347,7 +347,8 @@ func Test_message_not_cleared_after_mode()
|
|||||||
endfunction
|
endfunction
|
||||||
set showmode
|
set showmode
|
||||||
set cmdheight=1
|
set cmdheight=1
|
||||||
call setline(1, ['one', 'two', 'three'])
|
call test_settime(1)
|
||||||
|
call setline(1, ['one', 'NoSuchFile', 'three'])
|
||||||
END
|
END
|
||||||
call writefile(lines, 'XmessageMode', 'D')
|
call writefile(lines, 'XmessageMode', 'D')
|
||||||
let buf = RunVimInTerminal('-S XmessageMode', {'rows': 10})
|
let buf = RunVimInTerminal('-S XmessageMode', {'rows': 10})
|
||||||
@ -361,6 +362,12 @@ func Test_message_not_cleared_after_mode()
|
|||||||
call TermWait(buf)
|
call TermWait(buf)
|
||||||
call VerifyScreenDump(buf, 'Test_message_not_cleared_after_mode_2', {})
|
call VerifyScreenDump(buf, 'Test_message_not_cleared_after_mode_2', {})
|
||||||
|
|
||||||
|
" removing the mode message used to also clear the error message
|
||||||
|
call term_sendkeys(buf, ":set cmdheight=2\<CR>")
|
||||||
|
call term_sendkeys(buf, '2GvEgf')
|
||||||
|
call TermWait(buf)
|
||||||
|
call VerifyScreenDump(buf, 'Test_message_not_cleared_after_mode_3', {})
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
|||||||
@ -695,6 +695,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1635,
|
||||||
/**/
|
/**/
|
||||||
1634,
|
1634,
|
||||||
/**/
|
/**/
|
||||||
|
|||||||
Reference in New Issue
Block a user