diff options
author | Kristian Rietveld <kris@gtk.org> | 2003-07-09 18:00:21 +0000 |
---|---|---|
committer | Kristian Rietveld <kristian@src.gnome.org> | 2003-07-09 18:00:21 +0000 |
commit | 8aafd6bb1682ab4c85b78c692c2d8e779d158d7d (patch) | |
tree | 6b219e280d98494172835a9ea7d0b494adc00906 /gdk/gdkwindow.c | |
parent | b960ba4f0247e407dceaba85451e31c4ca10e67b (diff) | |
download | gtk+-8aafd6bb1682ab4c85b78c692c2d8e779d158d7d.tar.gz |
Merge from stable.
Wed Jul 9 19:48:26 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
directly return from ->window_at_pointer, but set win_x and win_y
first if needed. (Fixes #110166, reported by Arno Charlet).
* gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
function to accept GdkDrawables and not just GdkWindows. This was
already done in some other functions a while back, but this patch
got lost for some reason.
Diffstat (limited to 'gdk/gdkwindow.c')
-rw-r--r-- | gdk/gdkwindow.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index 00c708c7bb..26d13366c0 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -1421,7 +1421,7 @@ gdk_window_draw_text_wc (GdkDrawable *drawable, } static GdkDrawable* -gdk_window_get_composite_drawable (GdkDrawable *window, +gdk_window_get_composite_drawable (GdkDrawable *drawable, gint x, gint y, gint width, @@ -1429,7 +1429,7 @@ gdk_window_get_composite_drawable (GdkDrawable *window, gint *composite_x_offset, gint *composite_y_offset) { - GdkWindowObject *private = (GdkWindowObject *)window; + GdkWindowObject *private = (GdkWindowObject *)drawable; GdkWindowPaint *paint; GdkRegion *buffered_region; GSList *tmp_list; @@ -1441,14 +1441,15 @@ gdk_window_get_composite_drawable (GdkDrawable *window, gint windowing_x_offset, windowing_y_offset; gint buffer_x_offset, buffer_y_offset; - if (GDK_WINDOW_DESTROYED (window) || private->paint_stack == NULL) + if ((GDK_IS_WINDOW (drawable) && GDK_WINDOW_DESTROYED (drawable)) + || private->paint_stack == NULL) { /* No backing store */ - _gdk_windowing_window_get_offsets (window, + _gdk_windowing_window_get_offsets (drawable, composite_x_offset, composite_y_offset); - return g_object_ref (window); + return g_object_ref (drawable); } buffered_region = NULL; @@ -1494,20 +1495,20 @@ gdk_window_get_composite_drawable (GdkDrawable *window, { gdk_region_destroy (buffered_region); - _gdk_windowing_window_get_offsets (window, + _gdk_windowing_window_get_offsets (drawable, composite_x_offset, composite_y_offset); - return g_object_ref (window); + return g_object_ref (drawable); } - tmp_pixmap = gdk_pixmap_new (window, + tmp_pixmap = gdk_pixmap_new (drawable, width, height, -1); tmp_gc = gdk_gc_new (tmp_pixmap); - _gdk_windowing_window_get_offsets (window, + _gdk_windowing_window_get_offsets (drawable, &windowing_x_offset, &windowing_y_offset); |