From 0fdc2873390655af8826b31cb76cfdd58c7397be Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Tue, 27 Mar 2012 07:51:20 +0200 Subject: [PATCH] styleproperty: Simplify compute_value function The compute_value fallback path is only needed for custom properties, the real style properties have custom compute functions if they need them already. --- gtk/gtkcsscustomproperty.c | 14 +++++++++++++- gtk/gtkcssstyleproperty.c | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/gtk/gtkcsscustomproperty.c b/gtk/gtkcsscustomproperty.c index fd53b859b7..f58e8d6d20 100644 --- a/gtk/gtkcsscustomproperty.c +++ b/gtk/gtkcsscustomproperty.c @@ -91,10 +91,22 @@ _gtk_css_custom_property_class_init (GtkCssCustomPropertyClass *klass) property_class->parse_value = gtk_css_custom_property_parse_value; } +static GtkCssValue * +gtk_css_custom_property_compute_value (GtkCssStyleProperty *property, + GtkStyleContext *context, + GtkCssValue *specified) +{ + GtkCssCustomProperty *custom = GTK_CSS_CUSTOM_PROPERTY (property); + + return _gtk_css_style_compute_value (context, custom->pspec->value_type, specified); +} static void -_gtk_css_custom_property_init (GtkCssCustomProperty *custom_property) +_gtk_css_custom_property_init (GtkCssCustomProperty *custom) { + GtkCssStyleProperty *style = GTK_CSS_STYLE_PROPERTY (custom); + + style->compute_value = gtk_css_custom_property_compute_value; } static GtkCssValue * diff --git a/gtk/gtkcssstyleproperty.c b/gtk/gtkcssstyleproperty.c index a8bcf2f1cc..9a3959d582 100644 --- a/gtk/gtkcssstyleproperty.c +++ b/gtk/gtkcssstyleproperty.c @@ -303,7 +303,7 @@ gtk_css_style_property_real_compute_value (GtkCssStyleProperty *property, GtkStyleContext *context, GtkCssValue *specified) { - return _gtk_css_style_compute_value (context, _gtk_css_style_property_get_computed_type (property), specified); + return _gtk_css_value_ref (specified); } static gboolean