forked from aniani/vim
patch 8.0.1449: slow redrawing with DirectX
Problem: Slow redrawing with DirectX.
Solution: Avoid calling gui_mch_flush() unnecessarily, especially when
updating the cursor. (Ken Takata, closes #2560)
This commit is contained in:
21
src/term.c
21
src/term.c
@@ -2501,6 +2501,27 @@ out_flush(void)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* out_flush_cursor(): flush the output buffer and redraw the cursor
|
||||
*/
|
||||
void
|
||||
out_flush_cursor(
|
||||
int force UNUSED, /* when TRUE, update cursor even when not moved */
|
||||
int clear_selection UNUSED) /* clear selection under cursor */
|
||||
{
|
||||
mch_disable_flush();
|
||||
out_flush();
|
||||
mch_enable_flush();
|
||||
#ifdef FEAT_GUI
|
||||
if (gui.in_use)
|
||||
{
|
||||
gui_update_cursor(force, clear_selection);
|
||||
gui_may_flush();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#if defined(FEAT_MBYTE) || defined(PROTO)
|
||||
/*
|
||||
* Sometimes a byte out of a multi-byte character is written with out_char().
|
||||
|
||||
Reference in New Issue
Block a user