diff src/drawscreen.c @ 29958:549994614a5a v9.0.0317

patch 9.0.0317: when updating the whole screen a popup may not be redrawn Commit: https://github.com/vim/vim/commit/b13d3405fffae1115acc1433479b616f30e292e5 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 29 13:44:28 2022 +0100 patch 9.0.0317: when updating the whole screen a popup may not be redrawn Problem: When updating the whole screen a popup may not be redrawn. Solution: Mark the screen and windows for redraw also when not clearing. Also mark popup windows for redraw.
author Bram Moolenaar <Bram@vim.org>
date Mon, 29 Aug 2022 14:45:04 +0200
parents 451ec8a09a63
children 4fcf816aa806
line wrap: on
line diff
--- a/src/drawscreen.c
+++ b/src/drawscreen.c
@@ -173,13 +173,19 @@ update_screen(int type_arg)
 	if (type != UPD_CLEAR)
 	{
 	    if (msg_scrolled > Rows - 5)	    // redrawing is faster
+	    {
 		type = UPD_NOT_VALID;
+		redraw_as_cleared();
+	    }
 	    else
 	    {
 		check_for_delay(FALSE);
 		if (screen_ins_lines(0, 0, msg_scrolled, (int)Rows, 0, NULL)
 								       == FAIL)
+		{
 		    type = UPD_NOT_VALID;
+		    redraw_as_cleared();
+		}
 		FOR_ALL_WINDOWS(wp)
 		{
 		    if (wp->w_winrow < msg_scrolled)