diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c index 1106bdbe7a..aac0bb3d9d 100644 --- a/gtk/gtkcssnode.c +++ b/gtk/gtkcssnode.c @@ -22,7 +22,6 @@ #include "gtkcssanimatedstyleprivate.h" #include "gtkcsssectionprivate.h" #include "gtkcssstylepropertyprivate.h" -#include "gtkdebug.h" #include "gtkintl.h" #include "gtkmarshalers.h" #include "gtksettingsprivate.h" @@ -1372,23 +1371,6 @@ gtk_css_node_validate_internal (GtkCssNode *cssnode, { GtkCssNode *child; - /* If you run your application with - * GTK_DEBUG=no-css-cache - * every invalidation will purge the cache and completely query - * everything anew form the cache. This is slow (in particular - * when animating), but useful for figuring out bugs. - * - * We achieve that by pretending that everything that could have - * changed has and so we of course totally need to redo everything. - * - * Note that this also completely revalidates child widgets all - * the time. - */ -#ifdef G_ENABLE_DEBUG - if (GTK_DEBUG_CHECK (NO_CSS_CACHE)) - cssnode->pending_changes |= GTK_CSS_CHANGE_ANY; -#endif - if (!cssnode->invalid) return; diff --git a/gtk/gtkcssnodestylecache.c b/gtk/gtkcssnodestylecache.c index 8c250bcac6..b07776d666 100644 --- a/gtk/gtkcssnodestylecache.c +++ b/gtk/gtkcssnodestylecache.c @@ -19,6 +19,7 @@ #include "gtkcssnodestylecacheprivate.h" +#include "gtkdebug.h" #include "gtkcssstaticstyleprivate.h" struct _GtkCssNodeStyleCache { @@ -78,6 +79,18 @@ may_be_stored_in_cache (GtkCssStyle *style) { GtkCssChange change; + /* If you run your application with + * GTK_DEBUG=no-css-cache + * no caching will happen. This is slow (in particular + * when animating), but useful for figuring out bugs. + * + * We achieve that by disallowing any inserts into caches here. + */ +#ifdef G_ENABLE_DEBUG + if (GTK_DEBUG_CHECK (NO_CSS_CACHE)) + return FALSE; +#endif + if (!GTK_IS_CSS_STATIC_STYLE (style)) return FALSE;