mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-02 08:50:28 +00:00
customproperty: Don't rely on querying style property
This way, we can remove type madness from GtkCssStyleProperty later.
This commit is contained in:
parent
bc9060a591
commit
b5fc484c99
@ -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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user