Mercurial > vim
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)