summaryrefslogtreecommitdiff
path: root/src/getchar.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-01-31 20:51:47 +0100
committerBram Moolenaar <Bram@vim.org>2018-01-31 20:51:47 +0100
commita338adcf222b6a24e26ea5ae6a2ad27f914acb38 (patch)
tree0ffe28d0a3a60c2c1444a991514505c448d4335b /src/getchar.c
parent37badc898b8d167e11553b6d05908ffd35928a6e (diff)
downloadvim-git-a338adcf222b6a24e26ea5ae6a2ad27f914acb38.tar.gz
patch 8.0.1449: slow redrawing with DirectXv8.0.1449
Problem: Slow redrawing with DirectX. Solution: Avoid calling gui_mch_flush() unnecessarily, especially when updating the cursor. (Ken Takata, closes #2560)
Diffstat (limited to 'src/getchar.c')
-rw-r--r--src/getchar.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/getchar.c b/src/getchar.c
index 18dc1a670..70cf4f172 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -2972,16 +2972,10 @@ inchar(
if (wait_time == -1L || wait_time > 100L) /* flush output before waiting */
{
cursor_on();
- out_flush();
-#ifdef FEAT_GUI
- if (gui.in_use)
- {
- gui_update_cursor(FALSE, FALSE);
-# ifdef FEAT_MOUSESHAPE
- if (postponed_mouseshape)
- update_mouseshape(-1);
-# endif
- }
+ out_flush_cursor(FALSE, FALSE);
+#if defined(FEAT_GUI) && defined(FEAT_MOUSESHAPE)
+ if (gui.in_use && postponed_mouseshape)
+ update_mouseshape(-1);
#endif
}