summaryrefslogtreecommitdiff
path: root/gtk/gtkcssshadowvalue.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2014-06-10 01:04:55 +0200
committerBenjamin Otte <otte@redhat.com>2014-06-10 01:07:57 +0200
commit3759190c2674aebd6b40ff5f337b155073ed5b78 (patch)
tree51d5a33d92df8b70cc010037a0cfe85a463419ed /gtk/gtkcssshadowvalue.c
parentfc00381d306400977c7c83e564a7eb552cc8250d (diff)
downloadgtk+-3759190c2674aebd6b40ff5f337b155073ed5b78.tar.gz
css: Parse text-shadow values properly
We used to accept the same syntax for text-shadow and icon-shadow as we accept for box-shadow. However, box-shadow does accept a spread and the inset keyword while the others should not.
Diffstat (limited to 'gtk/gtkcssshadowvalue.c')
-rw-r--r--gtk/gtkcssshadowvalue.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/gtk/gtkcssshadowvalue.c b/gtk/gtkcssshadowvalue.c
index 6dcd2dd798..fead494c39 100644
--- a/gtk/gtkcssshadowvalue.c
+++ b/gtk/gtkcssshadowvalue.c
@@ -209,7 +209,8 @@ value_is_done_parsing (GtkCssParser *parser)
}
GtkCssValue *
-_gtk_css_shadow_value_parse (GtkCssParser *parser)
+_gtk_css_shadow_value_parse (GtkCssParser *parser,
+ gboolean box_shadow_mode)
{
enum {
HOFFSET,
@@ -223,7 +224,8 @@ _gtk_css_shadow_value_parse (GtkCssParser *parser)
gboolean inset;
guint i;
- inset = _gtk_css_parser_try (parser, "inset", TRUE);
+ if (box_shadow_mode)
+ inset = _gtk_css_parser_try (parser, "inset", TRUE);
do
{
@@ -254,7 +256,7 @@ _gtk_css_shadow_value_parse (GtkCssParser *parser)
else
values[RADIUS] = _gtk_css_number_value_new (0.0, GTK_CSS_PX);
- if (_gtk_css_parser_has_number (parser))
+ if (box_shadow_mode && _gtk_css_parser_has_number (parser))
{
values[SPREAD] = _gtk_css_number_value_parse (parser,
GTK_CSS_PARSE_LENGTH
@@ -265,7 +267,7 @@ _gtk_css_shadow_value_parse (GtkCssParser *parser)
else
values[SPREAD] = _gtk_css_number_value_new (0.0, GTK_CSS_PX);
}
- else if (!inset && _gtk_css_parser_try (parser, "inset", TRUE))
+ else if (!inset && box_shadow_mode && _gtk_css_parser_try (parser, "inset", TRUE))
{
if (values[HOFFSET] == NULL)
goto fail;