From b827725aceabfc88e33f80eec78ece029f2553c6 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 13 Feb 2015 22:00:06 +0100 Subject: [PATCH] csspathnode: Call gtk_style_context_validate() Don't call gtk_style_context_invalidate(), that function does too much work. --- gtk/gtkcsspathnode.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/gtk/gtkcsspathnode.c b/gtk/gtkcsspathnode.c index 8f838fc830..1fc702e22d 100644 --- a/gtk/gtkcsspathnode.c +++ b/gtk/gtkcsspathnode.c @@ -18,6 +18,7 @@ #include "config.h" #include "gtkcsspathnodeprivate.h" +#include "gtkcssstylepropertyprivate.h" #include "gtkprivate.h" #include "gtkstylecontextprivate.h" @@ -41,9 +42,16 @@ gtk_css_path_node_invalidate (GtkCssNode *node) if (path_node->context) { - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - gtk_style_context_invalidate (path_node->context); - G_GNUC_END_IGNORE_DEPRECATIONS; + GtkBitmask *changes; + + changes = _gtk_bitmask_new (); + changes = _gtk_bitmask_invert_range (changes, + 0, + _gtk_css_style_property_get_n_properties ()); + + gtk_style_context_validate (path_node->context, changes); + + _gtk_bitmask_free (changes); } }