patch 9.0.1451: unnecessary redrawing when 'showcmdloc' is not "last"
Problem: Unnecessary redrawing when 'showcmdloc' is not "last".
Solution: Redraw later when "showcmd_is_clear" is set. (Luuk van Baal,
closes #12260)
diff --git a/src/normal.c b/src/normal.c
index 6f947a6..1b5326b 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -913,7 +913,7 @@
msg_col = 0;
}
- old_pos = curwin->w_cursor; // remember where cursor was
+ old_pos = curwin->w_cursor; // remember where the cursor was
// When 'keymodel' contains "startsel" some keys start Select/Visual
// mode.
@@ -1803,9 +1803,19 @@
cursor_off();
if (*p_sloc == 's')
- win_redr_status(curwin, FALSE);
+ {
+ if (showcmd_is_clear)
+ curwin->w_redr_status = TRUE;
+ else
+ win_redr_status(curwin, FALSE);
+ }
else if (*p_sloc == 't')
- draw_tabline();
+ {
+ if (showcmd_is_clear)
+ redraw_tabline = TRUE;
+ else
+ draw_tabline();
+ }
else // 'showcmdloc' is "last" or empty
{
if (!showcmd_is_clear)
diff --git a/src/version.c b/src/version.c
index ae81daa..e55ff4a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1451,
+/**/
1450,
/**/
1449,