[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master d63bfbc 3/3: * src/xterm.c (x_update_end) [USE_CAIR
From: |
YAMAMOTO Mitsuharu |
Subject: |
[Emacs-diffs] master d63bfbc 3/3: * src/xterm.c (x_update_end) [USE_CAIRO]: Flush non-double-buffered surface. |
Date: |
Thu, 20 Jun 2019 20:33:09 -0400 (EDT) |
branch: master
commit d63bfbcae4a31560468e8800fe8381fda3b9d2ce
Author: YAMAMOTO Mitsuharu <address@hidden>
Commit: YAMAMOTO Mitsuharu <address@hidden>
* src/xterm.c (x_update_end) [USE_CAIRO]: Flush non-double-buffered surface.
---
src/xterm.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/xterm.c b/src/xterm.c
index 38bf0a2..1acff2a 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -1240,6 +1240,15 @@ x_update_end (struct frame *f)
/* Mouse highlight may be displayed again. */
MOUSE_HL_INFO (f)->mouse_face_defer = false;
+#ifdef USE_CAIRO
+ if (!FRAME_X_DOUBLE_BUFFERED_P (f) && FRAME_CR_CONTEXT (f))
+ {
+ block_input ();
+ cairo_surface_flush (cairo_get_target (FRAME_CR_CONTEXT (f)));
+ unblock_input ();
+ }
+#endif
+
#ifndef XFlush
block_input ();
XFlush (FRAME_X_DISPLAY (f));