summaryrefslogtreecommitdiff
path: root/gdk/gdkwindow.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-02-18 03:29:00 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-02-18 03:29:00 +0000
commit2e8d083c3c305354a2224a4cb44f8e5816b20f48 (patch)
treeb606ebdd4ce77912398586cefc6a6b3f896550e6 /gdk/gdkwindow.c
parente0f29748850bc0c572c51470360639dc9a5d79c8 (diff)
downloadgtk+-2e8d083c3c305354a2224a4cb44f8e5816b20f48.tar.gz
Sun Feb 17 21:30:49 2002 Owen Taylor <otaylor@redhat.com> * Released 1.3.14 * configure.in: Version 1.3.14, interface, binary age 0. * gdk/gdkregion-generic.c (miSubtractO): Fix out-of-bounds read. (#71619, reported by Morten Welinder) * gtk/gtkmenu.c (gtk_menu_class_init): Fix setting default. * gtk/gtkfilesel.c (gtk_file_selection_class_init): Add a select_multiple property to go along with thenew get/set_select_multiple. * gdk/gdkwindow.c: Patch from Soeren Sandmann to improve update debugging code. (#71703)
Diffstat (limited to 'gdk/gdkwindow.c')
-rw-r--r--gdk/gdkwindow.c45
1 files changed, 25 insertions, 20 deletions
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 6878558084..c79f198089 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -2242,6 +2242,30 @@ gdk_window_invalidate_rect (GdkWindow *window,
gdk_region_destroy (region);
}
+static void
+draw_ugly_color (GdkWindow *window,
+ GdkRegion *region)
+{
+ /* Draw ugly color all over the newly-invalid region */
+ GdkColor ugly_color = { 0, 50000, 10000, 10000 };
+ GdkGC *ugly_gc;
+ GdkRectangle clipbox;
+
+ ugly_gc = gdk_gc_new (window);
+ gdk_gc_set_rgb_fg_color (ugly_gc, &ugly_color);
+ gdk_gc_set_clip_region (ugly_gc, region);
+
+ gdk_region_get_clipbox (region, &clipbox);
+
+ gdk_draw_rectangle (window,
+ ugly_gc,
+ TRUE,
+ clipbox.x, clipbox.y,
+ clipbox.width, clipbox.height);
+
+ g_object_unref (G_OBJECT (ugly_gc));
+}
+
/**
* gdk_window_invalidate_maybe_recurse:
* @window: a #GdkWindow
@@ -2291,26 +2315,7 @@ gdk_window_invalidate_maybe_recurse (GdkWindow *window,
if (!gdk_region_empty (visible_region))
{
if (debug_updates)
- {
- /* Draw ugly color all over the newly-invalid region */
- GdkRectangle ugly_rect;
- GdkGC *ugly_gc;
- GdkColor ugly_color = { 0, 60000, 10000, 10000 };
-
- ugly_gc = gdk_gc_new (window);
-
- gdk_gc_set_rgb_fg_color (ugly_gc, &ugly_color);
-
- gdk_region_get_clipbox (visible_region, &ugly_rect);
-
- gdk_draw_rectangle (window,
- ugly_gc,
- TRUE,
- ugly_rect.x, ugly_rect.y,
- ugly_rect.width, ugly_rect.height);
-
- g_object_unref (G_OBJECT (ugly_gc));
- }
+ draw_ugly_color (window, region);
if (private->update_area)
{