[gtk+] gdkwindow: Expose all native windows
- From: Alexander Larsson <alexl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] gdkwindow: Expose all native windows
- Date: Tue, 7 May 2013 14:44:43 +0000 (UTC)
commit e90fab2b837ac8585d97a0c07622d03fe27cc120
Author: Alexander Larsson <alexl redhat com>
Date: Tue May 7 11:46:50 2013 +0200
gdkwindow: Expose all native windows
We need to send exposes for all native windows, even the ones
without an exposure mask set, because otherwise non-native
children of the native window with an exposure mask will
not be drawn.
gdk/gdkwindow.c | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 7a9b0c3..a71c0d2 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -3334,7 +3334,13 @@ _gdk_window_process_updates_recurse (GdkWindow *window,
if (!cairo_region_is_empty (clipped_expose_region) &&
!window->destroyed)
{
- if (window->event_mask & GDK_EXPOSURE_MASK)
+ /* While gtk+ no longer handles exposes on anything but native
+ window we still have to send them to all windows that have the
+ event mask set for backwards compat. We also need to send
+ it to all native windows, even if they don't specify the
+ expose mask, because they may have non-native children that do. */
+ if (gdk_window_has_impl (window) ||
+ window->event_mask & GDK_EXPOSURE_MASK)
{
GdkEvent event;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]