stylecontext: Do invalidation on first resize container

... instead of taking the last one we find. This is necessary as
attached widgets (mostly menus) can be attached to an invisible widget,
but we still want to invalidate styles for them.

https://bugzilla.gnome.org/show_bug.cgi?id=695772
This commit is contained in:
Benjamin Otte 2013-03-16 00:05:03 +01:00
parent 69eb272e63
commit f9f6c4fa49

View File

@ -1071,10 +1071,10 @@ gtk_style_context_set_invalid (GtkStyleContext *context,
if (invalid) if (invalid)
{ {
if (priv->parent) if (GTK_IS_RESIZE_CONTAINER (priv->widget))
gtk_style_context_set_invalid (priv->parent, TRUE);
else if (GTK_IS_RESIZE_CONTAINER (priv->widget))
_gtk_container_queue_restyle (GTK_CONTAINER (priv->widget)); _gtk_container_queue_restyle (GTK_CONTAINER (priv->widget));
else if (priv->parent)
gtk_style_context_set_invalid (priv->parent, TRUE);
} }
} }