changeset 29936:64b885d1acfc v9.0.0306

patch 9.0.0306: buffer write message is two lines in message popup window Commit: https://github.com/vim/vim/commit/f2fb54f641aa0e8a64356e4d0053f89b52c78229 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 28 20:58:51 2022 +0100 patch 9.0.0306: buffer write message is two lines in message popup window Problem: Buffer write message is two lines in message popup window. Solution: Overwrite message if "msg_scroll" is off.
author Bram Moolenaar <Bram@vim.org>
date Sun, 28 Aug 2022 22:00:04 +0200
parents e5957ffae39a
children 7d487d8594d3
files src/message.c src/testdir/dumps/Test_cmdheight_zero_5.dump src/testdir/test_messages.vim src/version.c
diffstat 4 files changed, 16 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/message.c
+++ b/src/message.c
@@ -1470,10 +1470,12 @@ msg_start(void)
 #ifdef HAS_MESSAGE_WINDOW
     if (use_message_window())
     {
-	if (popup_message_win_visible() && msg_col > 0)
+	if (popup_message_win_visible() && msg_col > 0
+					       && (msg_scroll || !full_screen))
 	{
 	    win_T *wp = popup_get_message_win();
 
+	    // start a new line
 	    curbuf = wp->w_buffer;
 	    ml_append(wp->w_buffer->b_ml.ml_line_count,
 					      (char_u *)"", (colnr_T)0, FALSE);
new file mode 100644
--- /dev/null
+++ b/src/testdir/dumps/Test_cmdheight_zero_5.dump
@@ -0,0 +1,6 @@
+|s+0&#ffffff0|o|m|e| >t|e|x|t| @65
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|═+0#e000002&@74
+|"|X|s|o|m|e|T|e|x|t|"| |[|N|e|w|]| |1|L|,| |1|0|B| |w|r|i|t@1|e|n| @41
--- a/src/testdir/test_messages.vim
+++ b/src/testdir/test_messages.vim
@@ -494,13 +494,17 @@ func Test_cmdheight_zero_dump()
   call VerifyScreenDump(buf, 'Test_cmdheight_zero_3', {})
 
   " Message for CTRL-C is in the popup window
-  "call term_sendkeys(buf, ":call popup_clear()\<CR>")
   call term_sendkeys(buf, "\<C-C>")
   call VerifyScreenDump(buf, 'Test_cmdheight_zero_4', {})
 
+  " file write message is one line
+  call term_sendkeys(buf, ":w XsomeText\<CR>")
+  call VerifyScreenDump(buf, 'Test_cmdheight_zero_5', {})
+
   " clean up
   call StopVimInTerminal(buf)
   call delete('XtestCmdheight')
+  call delete('XsomeText')
 endfunc
 
 func Test_cmdheight_zero_shell()
--- a/src/version.c
+++ b/src/version.c
@@ -708,6 +708,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    306,
+/**/
     305,
 /**/
     304,