emacs-diffs
[Top][All Lists]
Advanced

[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));



reply via email to

[Prev in Thread] Current Thread [Next in Thread]