mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
ui: disable 'lazyredraw' during ui_refresh.
Could also try `do_redraw = true` instead of save/restore `p_lz`, but the nice thing about save/restore of `p_lz` is that it is "atomic". The semantics of `do_redraw` are not clear to me. Closes #4884 References #6202 References https://github.com/neovim/neovim/pull/6202#issuecomment-284379503 References #3929 #5692 #6157 References #5866
This commit is contained in:
parent
d258ac8ed2
commit
34e5654f21
@ -7440,13 +7440,11 @@ int number_width(win_T *wp)
|
||||
return n;
|
||||
}
|
||||
|
||||
/*
|
||||
* Set size of the Vim shell.
|
||||
* If 'mustset' is TRUE, we must set Rows and Columns, do not get the real
|
||||
* window size (this is used for the :win command).
|
||||
* If 'mustset' is FALSE, we may try to get the real window size and if
|
||||
* it fails use 'width' and 'height'.
|
||||
*/
|
||||
/// Set size of the Vim shell.
|
||||
/// If 'mustset' is TRUE, we must set Rows and Columns, do not get the real
|
||||
/// window size (this is used for the :win command).
|
||||
/// If 'mustset' is FALSE, we may try to get the real window size and if
|
||||
/// it fails use 'width' and 'height'.
|
||||
void screen_resize(int width, int height)
|
||||
{
|
||||
static int busy = FALSE;
|
||||
|
@ -193,7 +193,12 @@ void ui_refresh(void)
|
||||
}
|
||||
|
||||
row = col = 0;
|
||||
|
||||
int save_p_lz = p_lz;
|
||||
p_lz = false; // convince redrawing() to return true ...
|
||||
screen_resize(width, height);
|
||||
p_lz = save_p_lz;
|
||||
|
||||
for (UIWidget i = 0; (int)i < UI_WIDGETS; i++) {
|
||||
ui_set_external(i, ext_widgets[i]);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user