[gtk+/wip/baedert/symbolic-icons: 6/8] iconhelper: Don't invalidate unnecessarily



commit 4f111b2338d2052a4060b5d5e42480e39d668f52
Author: Timm Bäder <mail baedert org>
Date:   Fri Feb 5 09:51:59 2016 +0100

    iconhelper: Don't invalidate unnecessarily

 gtk/gtkiconhelper.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkiconhelper.c b/gtk/gtkiconhelper.c
index 8a4c7fe..899a5f1 100644
--- a/gtk/gtkiconhelper.c
+++ b/gtk/gtkiconhelper.c
@@ -146,7 +146,10 @@ static void
 gtk_icon_helper_style_changed (GtkCssGadget      *gadget,
                                GtkCssStyleChange *change)
 {
-  if (gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_ICON))
+  GtkIconHelperPrivate *priv = GTK_ICON_HELPER (gadget)->priv;
+
+  if ((gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_ICON) && !priv->surface_is_symbolic) ||
+      (gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_SYMBOLIC_ICON) && priv->surface_is_symbolic))
     gtk_icon_helper_invalidate (GTK_ICON_HELPER (gadget));
 
   if (!GTK_IS_CSS_TRANSIENT_NODE (gtk_css_gadget_get_node (gadget)))


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]