# HG changeset patch # User Bram Moolenaar # Date 1644527702 -3600 # Node ID 9caeb7f8b0947a69c9f4fa5f92b9f9c4c93d01d4 # Parent fc05930fabdf0b929a9c7c6a03a8047c02b61a11 patch 8.2.4341: command line not redrawn when finishing popup menu Commit: https://github.com/vim/vim/commit/414acd342f4a66d930da34d419929985b48bd301 Author: Bram Moolenaar Date: Thu Feb 10 21:09:45 2022 +0000 patch 8.2.4341: command line not redrawn when finishing popup menu Problem: Command line not redrawn when finishing popup menu and the screen has scrolled up. Solution: Redraw the command line after updating the screen. (closes #9722) diff --git a/src/cmdexpand.c b/src/cmdexpand.c --- a/src/cmdexpand.c +++ b/src/cmdexpand.c @@ -331,6 +331,7 @@ void cmdline_pum_remove(void) pum_undisplay(); VIM_CLEAR(compl_match_array); update_screen(0); + redrawcmd(); } void cmdline_pum_cleanup(cmdline_info_T *cclp) diff --git a/src/testdir/dumps/Test_wildmenu_pum_38.dump b/src/testdir/dumps/Test_wildmenu_pum_38.dump new file mode 100644 --- /dev/null +++ b/src/testdir/dumps/Test_wildmenu_pum_38.dump @@ -0,0 +1,10 @@ +| +0&#ffffff0@74 +|~+0#4040ff13&| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|:+0#0000000&|c|o|m|c|l|e|a|r| > @64 diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim --- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -2160,6 +2160,13 @@ func Test_wildmenu_pum() call term_sendkeys(buf, ":sign \\\") call VerifyScreenDump(buf, 'Test_wildmenu_pum_37', {}) + " After removing the pum the command line is redrawn + call term_sendkeys(buf, ":edit foo\") + call term_sendkeys(buf, ":edit bar\") + call term_sendkeys(buf, ":ls\") + call term_sendkeys(buf, ":com\ ") + call VerifyScreenDump(buf, 'Test_wildmenu_pum_38', {}) + call term_sendkeys(buf, "\\") call StopVimInTerminal(buf) call delete('Xtest') diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -747,6 +747,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 4341, +/**/ 4340, /**/ 4339,