From f2fb54f641aa0e8a64356e4d0053f89b52c78229 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 28 Aug 2022 20:58:51 +0100 Subject: [PATCH] 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. --- src/message.c | 4 +++- src/testdir/dumps/Test_cmdheight_zero_5.dump | 6 ++++++ src/testdir/test_messages.vim | 6 +++++- src/version.c | 2 ++ 4 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 src/testdir/dumps/Test_cmdheight_zero_5.dump diff --git a/src/message.c b/src/message.c index e73b837727..c6fbfbd4b6 100644 --- 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); diff --git a/src/testdir/dumps/Test_cmdheight_zero_5.dump b/src/testdir/dumps/Test_cmdheight_zero_5.dump new file mode 100644 index 0000000000..dd64210fc2 --- /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 diff --git a/src/testdir/test_messages.vim b/src/testdir/test_messages.vim index 7c71edc0ed..f714478efc 100644 --- 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()\") call term_sendkeys(buf, "\") call VerifyScreenDump(buf, 'Test_cmdheight_zero_4', {}) + " file write message is one line + call term_sendkeys(buf, ":w XsomeText\") + call VerifyScreenDump(buf, 'Test_cmdheight_zero_5', {}) + " clean up call StopVimInTerminal(buf) call delete('XtestCmdheight') + call delete('XsomeText') endfunc func Test_cmdheight_zero_shell() diff --git a/src/version.c b/src/version.c index e865eb548b..b69b74ad89 100644 --- a/src/version.c +++ b/src/version.c @@ -707,6 +707,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 306, /**/ 305, /**/