From 732e89e4f39b7c6f988c46c6d77b3e17769d85ce Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Wed, 5 Dec 2012 18:41:40 +0100 Subject: [PATCH] stylecontext: Always recompute font This is necessary because values in a GtkCssComputedValues can change now. So if the font-size is inherited or animated, the cached value will be outdated. Fixes the fontchooser preview not updating. --- gtk/gtkstylecontext.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c index 5b17b2159c..fbd8e1717f 100644 --- a/gtk/gtkstylecontext.c +++ b/gtk/gtkstylecontext.c @@ -3486,15 +3486,12 @@ gtk_style_context_get_font (GtkStyleContext *context, /* Yuck, fonts are created on-demand but we don't return a ref. * Do bad things to achieve this requirement */ - description = g_object_get_data (G_OBJECT (data->store), "font-cache-for-get_font"); - if (description == NULL) - { - gtk_style_context_get (context, state, "font", &description, NULL); - g_object_set_data_full (G_OBJECT (data->store), - "font-cache-for-get_font", - description, - (GDestroyNotify) pango_font_description_free); - } + gtk_style_context_get (context, state, "font", &description, NULL); + g_object_set_data_full (G_OBJECT (data->store), + "font-cache-for-get_font", + description, + (GDestroyNotify) pango_font_description_free); + return description; }