From b5fc484c99d623b3d4533196de6fef3806697f4c Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Tue, 27 Mar 2012 05:00:35 +0200 Subject: [PATCH] customproperty: Don't rely on querying style property This way, we can remove type madness from GtkCssStyleProperty later. --- gtk/gtkcsscustomproperty.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gtk/gtkcsscustomproperty.c b/gtk/gtkcsscustomproperty.c index 28355dccfa..fd53b859b7 100644 --- a/gtk/gtkcsscustomproperty.c +++ b/gtk/gtkcsscustomproperty.c @@ -28,6 +28,16 @@ G_DEFINE_TYPE (GtkCssCustomProperty, _gtk_css_custom_property, GTK_TYPE_CSS_STYLE_PROPERTY) +static GType +gtk_css_custom_property_get_specified_type (GParamSpec *pspec) +{ + if (pspec->value_type == GDK_TYPE_RGBA || + pspec->value_type == GDK_TYPE_COLOR) + return GTK_TYPE_SYMBOLIC_COLOR; + else + return pspec->value_type; +} + static GtkCssValue * gtk_css_custom_property_parse_value (GtkStyleProperty *property, GtkCssParser *parser, @@ -56,8 +66,7 @@ gtk_css_custom_property_parse_value (GtkStyleProperty *property, } else { - GtkCssStyleProperty *style = GTK_CSS_STYLE_PROPERTY (property); - g_value_init (&value, _gtk_css_style_property_get_specified_type (style)); + g_value_init (&value, gtk_css_custom_property_get_specified_type (custom->pspec)); success = _gtk_css_style_parse_value (&value, parser, base); }