From 2bf97567ceef6b33e2ea7d05e02d826aa448c01c Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 22 Aug 2015 11:22:27 -0400 Subject: [PATCH] Revert "gtkoverlay: Optimize size allocations" This reverts commit 93171cf4f346c0a5e71f274d012c3cacfe3880ba. This broke overlay controls in page 3 of widget-factory, gnome-photos, gnome-documents, etc. --- gtk/gtkoverlay.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/gtk/gtkoverlay.c b/gtk/gtkoverlay.c index 7a7d6e1df5..1cac3225a5 100644 --- a/gtk/gtkoverlay.c +++ b/gtk/gtkoverlay.c @@ -295,8 +295,11 @@ gtk_overlay_child_allocate (GtkOverlay *overlay, if (gtk_widget_get_mapped (GTK_WIDGET (overlay))) { + /* Note: This calls show every size allocation, which makes + * us keep the z-order of the chilren, as gdk_window_show() + * does an implicit raise. */ if (gtk_widget_get_visible (child->widget)) - gdk_window_show_unraised (child->window); + gdk_window_show (child->window); else if (gdk_window_is_visible (child->window)) gdk_window_hide (child->window); } @@ -580,16 +583,6 @@ gtk_overlay_reorder_overlay (GtkOverlay *overlay, if (index == old_index) return; - if (new_link) - { - GtkOverlayChild *new_child_info = new_link->data; - gdk_window_restack (child_info->window, new_child_info->window, TRUE); - } - else - { - gdk_window_raise (child_info->window); - } - priv->children = g_slist_delete_link (priv->children, old_link); priv->children = g_slist_insert_before (priv->children, new_link, child_info);