summaryrefslogtreecommitdiff
path: root/gdk/x11/gdkdnd-x11.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-02-06 00:41:07 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-02-06 00:41:07 +0000
commit9a8f790e8a6576261fde3b9caef4508e02397464 (patch)
treee5cc7cbd23cab906a80aeaeb2a475ca3011a792e /gdk/x11/gdkdnd-x11.c
parentd18c9de808473d325dff8f95de1e0b776f11c052 (diff)
downloadgtk+-9a8f790e8a6576261fde3b9caef4508e02397464.tar.gz
Keep the length of the anti-expose queue finite, by if it gets too long,
Tue Feb 5 19:13:42 2002 Owen Taylor <otaylor@redhat.com> * gdk/x11/gdkgeometry-x11.c (gdk_window_queue): Keep the length of the anti-expose queue finite, by if it gets too long, first doing a XSync() and checking the event queue, and if that doesn't work, simply discarding all anti-expose items in the queue. * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix ordering on ConfigureNotify (#56349, Thomas Leonard)
Diffstat (limited to 'gdk/x11/gdkdnd-x11.c')
-rw-r--r--gdk/x11/gdkdnd-x11.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c
index f7ffbd9db0..fd61beeedd 100644
--- a/gdk/x11/gdkdnd-x11.c
+++ b/gdk/x11/gdkdnd-x11.c
@@ -329,12 +329,14 @@ gdk_window_cache_filter (GdkXEvent *xev,
GUINT_TO_POINTER (xce->above));
if (above_node && node->prev != above_node)
{
+ /* Put the window above (before in the list) above_node
+ */
cache->children = g_list_remove_link (cache->children, node);
- node->next = above_node->next;
- if (node->next)
- node->next->prev = node;
- node->prev = above_node;
- above_node->next = node;
+ node->prev = above_node->prev;
+ if (node->prev)
+ node->prev->next = node;
+ node->next = above_node;
+ above_node->prev = node;
}
}
}