[gtk+/client-side-windows: 179/284] Expose _gdk_window_process_updates_recurse for backends



commit 1ee03b35d0ce2396c51fec5a0361d5566b889dad
Author: Richard Hult <richard imendio com>
Date:   Mon Jan 26 19:12:54 2009 +0100

    Expose _gdk_window_process_updates_recurse for backends
    
    We use this in the added windowing function
    _gdk_windowing_window_process_updates_recurse. The X11 implementation
    just calls _gdk_window_process_updates_recurse directly, but at least
    quartz will need to do some more work.
---
 gdk/gdkinternals.h      |    5 +++++
 gdk/gdkwindow.c         |   10 +++++-----
 gdk/x11/gdkwindow-x11.c |    7 +++++++
 3 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/gdk/gdkinternals.h b/gdk/gdkinternals.h
index 1402fdf..a682d59 100644
--- a/gdk/gdkinternals.h
+++ b/gdk/gdkinternals.h
@@ -287,6 +287,9 @@ void       _gdk_window_destroy           (GdkWindow      *window,
 void       _gdk_window_clear_update_area (GdkWindow      *window);
 void       _gdk_window_update_size       (GdkWindow      *window);
 
+void       _gdk_window_process_updates_recurse (GdkWindow *window,
+                                                GdkRegion *expose_region);
+
 void       _gdk_screen_close             (GdkScreen      *screen);
 
 const char *_gdk_get_sm_client_id (void);
@@ -361,6 +364,8 @@ void _gdk_windowing_got_event                (GdkDisplay       *display,
 					      GdkEvent         *event,
 					      gulong            serial);
 
+void _gdk_windowing_window_process_updates_recurse (GdkWindow *window,
+                                                    GdkRegion *expose_region);
 
 /* Return the number of bits-per-pixel for images of the specified depth. */
 gint _gdk_windowing_get_bits_for_depth (GdkDisplay *display,
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 3db2f6c..8e75c0a 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -4352,9 +4352,9 @@ gdk_window_schedule_update (GdkWindow *window)
     }
 }
 
-static void
-gdk_window_process_updates_recurse (GdkWindow *window,
-				    GdkRegion *expose_region)
+void
+_gdk_window_process_updates_recurse (GdkWindow *window,
+                                     GdkRegion *expose_region)
 {
   GdkWindowObject *private = (GdkWindowObject *)window;
   GdkWindowObject *child;
@@ -4393,7 +4393,7 @@ gdk_window_process_updates_recurse (GdkWindow *window,
 	  gdk_region_intersect (child_region, expose_region);
 	  gdk_region_subtract (expose_region, child_region);
 	  gdk_region_offset (child_region, -child->x, -child->y);
-	  gdk_window_process_updates_recurse ((GdkWindow *)child, child_region);
+	  _gdk_window_process_updates_recurse ((GdkWindow *)child, child_region);
 	}
       else 
 	{
@@ -4472,7 +4472,7 @@ gdk_window_process_updates_internal (GdkWindow *window)
 
 	  gdk_region_get_clipbox (expose_region, &clip_box);
 	  end_implicit = gdk_window_begin_implicit_paint (window, &clip_box);
-	  gdk_window_process_updates_recurse (window, expose_region);
+	  _gdk_windowing_window_process_updates_recurse (window, expose_region);
 	  if (end_implicit)
 	    gdk_window_end_implicit_paint (window);
 	  
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
index 685e72f..efb8a2c 100644
--- a/gdk/x11/gdkwindow-x11.c
+++ b/gdk/x11/gdkwindow-x11.c
@@ -5512,6 +5512,13 @@ _gdk_windowing_window_set_composited (GdkWindow *window,
 #endif
 }
 
+void
+_gdk_windowing_window_process_updates_recurse (GdkWindow *window,
+                                               GdkRegion *region)
+{
+  _gdk_window_process_updates_recurse (window, expose_region);
+}
+
 static void
 gdk_window_impl_iface_init (GdkWindowImplIface *iface)
 {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]