mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
updated for version 7.3.137
Problem: When 'lazyredraw' is set the screen may not be updated. (Ivan Krasilnikov) Solution: Call update_screen() before waiting for input.
This commit is contained in:
parent
ec737235c7
commit
6eb634ef1f
@ -2710,8 +2710,10 @@ vgetorpeek(advance)
|
||||
* are still available. But when those available characters
|
||||
* are part of a mapping, and we are going to do a blocking
|
||||
* wait here. Need to update the screen to display the
|
||||
* changed text so far. */
|
||||
if ((State & INSERT) && advance && must_redraw != 0)
|
||||
* changed text so far. Also for when 'lazyredraw' is set and
|
||||
* redrawing was postponed because there was something in the
|
||||
* input buffer (e.g., termresponse). */
|
||||
if (((State & INSERT) || p_lz) && advance && must_redraw != 0)
|
||||
{
|
||||
update_screen(0);
|
||||
setcursor(); /* put cursor back where it belongs */
|
||||
|
@ -3115,7 +3115,15 @@ get_keystroke()
|
||||
continue;
|
||||
|
||||
if (n == KEYLEN_REMOVED) /* key code removed */
|
||||
{
|
||||
if (must_redraw)
|
||||
{
|
||||
/* Redrawing was postponed, do it now. */
|
||||
update_screen(0);
|
||||
setcursor(); /* put cursor back where it belongs */
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (n > 0) /* found a termcode: adjust length */
|
||||
len = n;
|
||||
if (len == 0) /* nothing typed yet */
|
||||
|
@ -714,6 +714,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
137,
|
||||
/**/
|
||||
136,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user