1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-08 15:07:35 +00:00

Meta/CodeGenerators+LibWeb: Add support for 'easing-function' CSS values

This commit makes it possible to let properties accept easing functions
as values, which will be used in a later commit to implement
animation-timing-function.
This commit is contained in:
Ali Mohammad Pur 2023-07-06 16:54:15 +03:30 committed by Andreas Kling
parent dd073b2711
commit efa55673cd
3 changed files with 13 additions and 1 deletions

View file

@ -20,7 +20,10 @@ ErrorOr<void> generate_bounds_checking_function(JsonObject& properties, SourceGe
static bool type_name_is_enum(StringView type_name)
{
return !AK::first_is_one_of(type_name, "angle"sv, "color"sv, "custom-ident"sv, "frequency"sv, "image"sv, "integer"sv, "length"sv, "number"sv, "paint"sv, "percentage"sv, "ratio"sv, "rect"sv, "resolution"sv, "string"sv, "time"sv, "url"sv);
return !AK::first_is_one_of(type_name,
"angle"sv, "color"sv, "custom-ident"sv, "easing-function"sv, "frequency"sv, "image"sv,
"integer"sv, "length"sv, "number"sv, "paint"sv, "percentage"sv, "ratio"sv, "rect"sv,
"resolution"sv, "string"sv, "time"sv, "url"sv);
}
ErrorOr<int> serenity_main(Main::Arguments arguments)
@ -158,6 +161,7 @@ enum class ValueType {
Angle,
Color,
CustomIdent,
EasingFunction,
FilterValueList,
Frequency,
Image,
@ -614,6 +618,8 @@ bool property_accepts_type(PropertyID property_id, ValueType value_type)
TRY(property_generator.try_appendln(" case ValueType::Color:"));
} else if (type_name == "custom-ident") {
TRY(property_generator.try_appendln(" case ValueType::CustomIdent:"));
} else if (type_name == "easing-function") {
TRY(property_generator.try_appendln(" case ValueType::EasingFunction:"));
} else if (type_name == "frequency") {
TRY(property_generator.try_appendln(" case ValueType::Frequency:"));
} else if (type_name == "image") {