mirror of
https://github.com/RGBCube/serenity
synced 2025-07-24 15:07:45 +00:00
LibWeb: Treat CSS calc() values as "builtin_or_dynamic"
This commit is contained in:
parent
d6668dbc56
commit
21c59efbb9
3 changed files with 8 additions and 15 deletions
|
@ -1386,7 +1386,7 @@ Optional<float> Parser::try_parse_float(StringView string)
|
||||||
return is_negative ? -value : value;
|
return is_negative ? -value : value;
|
||||||
}
|
}
|
||||||
|
|
||||||
RefPtr<StyleValue> Parser::parse_keyword_or_custom_value(ParsingContext const&, StyleComponentValueRule const& component_value)
|
RefPtr<StyleValue> Parser::parse_builtin_or_dynamic_value(ParsingContext const& context, StyleComponentValueRule const& component_value)
|
||||||
{
|
{
|
||||||
if (component_value.is(Token::Type::Ident)) {
|
if (component_value.is(Token::Type::Ident)) {
|
||||||
auto ident = component_value.token().ident();
|
auto ident = component_value.token().ident();
|
||||||
|
@ -1804,8 +1804,8 @@ RefPtr<StyleValue> Parser::parse_css_value(ParsingContext const& context, Proper
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (auto keyword_or_custom = parse_keyword_or_custom_value(context, component_value))
|
if (auto builtin_or_dynamic = parse_builtin_or_dynamic_value(context, component_value))
|
||||||
return keyword_or_custom;
|
return builtin_or_dynamic;
|
||||||
|
|
||||||
if (auto length = parse_length_value(context, component_value))
|
if (auto length = parse_length_value(context, component_value))
|
||||||
return length;
|
return length;
|
||||||
|
|
|
@ -169,7 +169,7 @@ private:
|
||||||
static Optional<Length> parse_length(ParsingContext const&, StyleComponentValueRule const&);
|
static Optional<Length> parse_length(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
static Optional<URL> parse_url_function(ParsingContext const&, StyleComponentValueRule const&);
|
static Optional<URL> parse_url_function(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
|
|
||||||
static RefPtr<StyleValue> parse_keyword_or_custom_value(ParsingContext const&, StyleComponentValueRule const&);
|
static RefPtr<StyleValue> parse_builtin_or_dynamic_value(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
static RefPtr<StyleValue> parse_length_value(ParsingContext const&, StyleComponentValueRule const&);
|
static RefPtr<StyleValue> parse_length_value(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
static RefPtr<StyleValue> parse_numeric_value(ParsingContext const&, StyleComponentValueRule const&);
|
static RefPtr<StyleValue> parse_numeric_value(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
static RefPtr<StyleValue> parse_identifier_value(ParsingContext const&, StyleComponentValueRule const&);
|
static RefPtr<StyleValue> parse_identifier_value(ParsingContext const&, StyleComponentValueRule const&);
|
||||||
|
|
|
@ -241,20 +241,13 @@ public:
|
||||||
bool is_length() const { return type() == Type::Length; }
|
bool is_length() const { return type() == Type::Length; }
|
||||||
bool is_custom_property() const { return type() == Type::CustomProperty; }
|
bool is_custom_property() const { return type() == Type::CustomProperty; }
|
||||||
bool is_numeric() const { return type() == Type::Numeric; }
|
bool is_numeric() const { return type() == Type::Numeric; }
|
||||||
bool is_value_list() const
|
bool is_value_list() const { return type() == Type::ValueList; }
|
||||||
{
|
bool is_box_shadow() const { return type() == Type::BoxShadow; }
|
||||||
return type() == Type::ValueList;
|
bool is_calculated() const { return type() == Type::Calculated; }
|
||||||
}
|
|
||||||
|
|
||||||
bool is_builtin_or_dynamic() const
|
bool is_builtin_or_dynamic() const
|
||||||
{
|
{
|
||||||
return is_inherit() || is_initial() || is_custom_property();
|
return is_inherit() || is_initial() || is_custom_property() || is_calculated();
|
||||||
}
|
|
||||||
bool is_box_shadow() const { return type() == Type::BoxShadow; }
|
|
||||||
|
|
||||||
bool is_calculated() const
|
|
||||||
{
|
|
||||||
return type() == Type::Calculated;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual String to_string() const = 0;
|
virtual String to_string() const = 0;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue