[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 982ec03: * src/xterm.c (XTflash): Don’t use gdk_ca
From: |
Philipp Stephani |
Subject: |
[Emacs-diffs] master 982ec03: * src/xterm.c (XTflash): Don’t use gdk_cairo_create in GDK 3.22+ |
Date: |
Sun, 27 Aug 2017 07:47:30 -0400 (EDT) |
branch: master
commit 982ec0398cea6e41bcfc022c333b6f695fc03241
Author: Philipp Stephani <address@hidden>
Commit: Philipp Stephani <address@hidden>
* src/xterm.c (XTflash): Don’t use gdk_cairo_create in GDK 3.22+
---
src/xterm.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/xterm.c b/src/xterm.c
index fb220b3..d9a6df7 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -4018,7 +4018,13 @@ XTflash (struct frame *f)
when the scroll bars and the edit widget share the same X window. */
GdkWindow *window = gtk_widget_get_window (FRAME_GTK_WIDGET (f));
#ifdef HAVE_GTK3
+#if GTK_CHECK_VERSION (3, 22, 0)
+ cairo_region_t *region = gdk_window_get_visible_region (window);
+ GdkDrawingContext *context = gdk_window_begin_draw_frame (window, region);
+ cairo_t *cr = gdk_drawing_context_get_cairo_context (context);
+#else
cairo_t *cr = gdk_cairo_create (window);
+#endif
cairo_set_source_rgb (cr, 1, 1, 1);
cairo_set_operator (cr, CAIRO_OPERATOR_DIFFERENCE);
#define XFillRectangle(d, win, gc, x, y, w, h) \
@@ -4132,7 +4138,12 @@ XTflash (struct frame *f)
#ifdef USE_GTK
#ifdef HAVE_GTK3
+#if GTK_CHECK_VERSION (3, 22, 0)
+ gdk_window_end_draw_frame (window, context);
+ cairo_region_destroy (region);
+#else
cairo_destroy (cr);
+#endif
#else
g_object_unref (G_OBJECT (gc));
#endif
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 982ec03: * src/xterm.c (XTflash): Don’t use gdk_cairo_create in GDK 3.22+,
Philipp Stephani <=