- GtkStylePropertyClass *property_class = GTK_STYLE_PROPERTY_CLASS (klass);
-
- property_class->parse_value = gtk_css_custom_property_parse_value;
+ GtkCssStyleProperty *style = GTK_CSS_STYLE_PROPERTY (property);
+ GtkCssCustomProperty *custom = GTK_CSS_CUSTOM_PROPERTY (property);
+ GtkCssValue *css_value;
+
+ css_value = (* query_func) (_gtk_css_style_property_get_id (style), query_data);
+ if (css_value == NULL)
+ css_value = _gtk_css_style_property_get_initial_value (style);
+
+ g_value_init (value, custom->pspec->value_type);
+ g_value_copy (_gtk_css_typed_value_get (css_value), value);