patch 8.0.1173: terminal window is not redrawn after CTRL-L
Problem: Terminal window is not redrawn after CTRL-L. (Marcin Szamotulski)
Solution: Redraw the whole terminal when w_redr_type is NOT_VALID.
diff --git a/src/terminal.c b/src/terminal.c
index f0ae5ed..2ad98ba 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -56,6 +56,7 @@
* - GUI: when 'confirm' is set and trying to exit Vim, dialog offers to save
* changes to "!shell".
* (justrajdeep, 2017 Aug 22)
+ * - Redrawing is slow with Athena and Motif.
* - For the GUI fill termios with default values, perhaps like pangoterm:
* http://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/head:/main.c#L134
* - if the job in the terminal does not support the mouse, we can use the
@@ -2238,6 +2239,12 @@
screen = vterm_obtain_screen(vterm);
state = vterm_obtain_state(vterm);
+ if (wp->w_redr_type >= NOT_VALID)
+ {
+ term->tl_dirty_row_start = 0;
+ term->tl_dirty_row_end = MAX_ROW;
+ }
+
/*
* If the window was resized a redraw will be triggered and we get here.
* Adjust the size of the vterm unless 'termsize' specifies a fixed size.