summaryrefslogtreecommitdiff
path: root/gtk/gtktoolbar.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2012-03-21 09:37:09 +0100
committerBenjamin Otte <otte@redhat.com>2012-04-17 08:59:10 +0200
commitece9d2fd92b228503bc450dd2778f8d673dbfa18 (patch)
treeb35db4b944d7960cd85251c0563e9cd0a0e89779 /gtk/gtktoolbar.c
parente7a984b33762a3edd787294b012b4524cb8fd606 (diff)
downloadgtk+-ece9d2fd92b228503bc450dd2778f8d673dbfa18.tar.gz
gtk: Make widget only invalidate widget positions
Instead of resetting them completely
Diffstat (limited to 'gtk/gtktoolbar.c')
-rw-r--r--gtk/gtktoolbar.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gtk/gtktoolbar.c b/gtk/gtktoolbar.c
index 3974810f29..be669008fb 100644
--- a/gtk/gtktoolbar.c
+++ b/gtk/gtktoolbar.c
@@ -55,6 +55,7 @@
#include "gtkintl.h"
#include "gtktypebuiltins.h"
#include "gtkwidgetpath.h"
+#include "gtkwidgetprivate.h"
/**
@@ -3965,10 +3966,16 @@ gtk_toolbar_get_path_for_child (GtkContainer *container,
}
static void
+gtk_toolbar_invalidate_order_foreach (GtkWidget *widget)
+{
+ _gtk_widget_invalidate_style_context (widget, GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_SIBLING_POSITION);
+}
+
+static void
gtk_toolbar_invalidate_order (GtkToolbar *toolbar)
{
gtk_container_forall (GTK_CONTAINER (toolbar),
- (GtkCallback) gtk_widget_reset_style,
+ (GtkCallback) gtk_toolbar_invalidate_order_foreach,
NULL);
}