diff options
author | Matthias Clasen <mclasen@redhat.com> | 2009-11-27 18:17:33 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2009-11-27 18:19:20 -0500 |
commit | 5bfab2b9d49913284314ff6c22285b55b44ec1a1 (patch) | |
tree | cbb7d6cd127a2be2e1ac23029964f09fd9967173 /gdk/x11 | |
parent | 7abd4d1359ec6b376601169198bbe9a025461df3 (diff) | |
download | gtk+-5bfab2b9d49913284314ff6c22285b55b44ec1a1.tar.gz |
Short-circuit get_frame_extents for override-redirect windows
There's no reason to do our expensive round-trips for an override-redirect
window; just use local information. See bug 581145. Patch by Owen Taylor.
Diffstat (limited to 'gdk/x11')
-rw-r--r-- | gdk/x11/gdkwindow-x11.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index 5f3c13e9c4..6e79ff8644 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -2920,6 +2920,7 @@ gdk_window_get_frame_extents (GdkWindow *window, { GdkDisplay *display; GdkWindowObject *private; + GdkWindowImplX11 *impl; Window xwindow; Window xparent; Window root; @@ -2955,7 +2956,8 @@ gdk_window_get_frame_extents (GdkWindow *window, rect->y = private->y; gdk_drawable_get_size ((GdkDrawable *)private, &rect->width, &rect->height); - if (GDK_WINDOW_DESTROYED (private)) + impl = GDK_WINDOW_IMPL_X11 (private->impl); + if (GDK_WINDOW_DESTROYED (private) || impl->override_redirect) return; nvroots = 0; |