@@ -275,6 +275,12 @@ redraw_buf_and_status_later(buf_T *buf, int type)
275275{
276276 win_T * wp ;
277277
278+ #ifdef FEAT_WILDMENU
279+ if (wild_menu_showing != 0 )
280+ /* Don't redraw while the command line completion is displayed, it
281+ * would disappear. */
282+ return ;
283+ #endif
278284 FOR_ALL_WINDOWS (wp )
279285 {
280286 if (wp -> w_buffer == buf )
@@ -444,22 +450,16 @@ redraw_after_callback(void)
444450 ; /* do nothing */
445451 else if (State & CMDLINE )
446452 {
447- /* Redrawing only works when the screen didn't scroll. */
448- if (msg_scrolled == 0 )
449- {
453+ /* Redrawing only works when the screen didn't scroll. Don't clear
454+ * wildmenu entries. */
455+ if (msg_scrolled == 0
456+ #ifdef FEAT_WILDMENU
457+ && wild_menu_showing == 0
458+ #endif
459+ )
450460 update_screen (0 );
451- compute_cmdrow ();
452- }
453- else
454- {
455- /* Redraw in the same position, so that the user can continue
456- * editing the command. */
457- compute_cmdrow ();
458- if (cmdline_row > msg_scrolled )
459- cmdline_row -= msg_scrolled ;
460- else
461- cmdline_row = 0 ;
462- }
461+ /* Redraw in the same position, so that the user can continue
462+ * editing the command. */
463463 redrawcmdline_ex (FALSE);
464464 }
465465 else if (State & (NORMAL | INSERT ))
@@ -9445,9 +9445,9 @@ setcursor(void)
94459445
94469446
94479447/*
9448- * insert 'line_count' lines at 'row' in window 'wp'
9449- * if 'invalid' is TRUE the wp->w_lines[].wl_lnum is invalidated.
9450- * if 'mayclear' is TRUE the screen will be cleared if it is faster than
9448+ * Insert 'line_count' lines at 'row' in window 'wp'.
9449+ * If 'invalid' is TRUE the wp->w_lines[].wl_lnum is invalidated.
9450+ * If 'mayclear' is TRUE the screen will be cleared if it is faster than
94519451 * scrolling.
94529452 * Returns FAIL if the lines are not inserted, OK for success.
94539453 */
@@ -9530,7 +9530,7 @@ win_ins_lines(
95309530}
95319531
95329532/*
9533- * delete "line_count" window lines at "row" in window "wp"
9533+ * Delete "line_count" window lines at "row" in window "wp".
95349534 * If "invalid" is TRUE curwin->w_lines[] is invalidated.
95359535 * If "mayclear" is TRUE the screen will be cleared if it is faster than
95369536 * scrolling
0 commit comments