| Index: Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| diff --git a/Source/core/css/resolver/AnimatedStyleBuilder.cpp b/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| index 6a27566d6e84d720d872d57de03ae601ac1d4d11..275460a84f64a251faeee610ad055e017b55cafb 100644
|
| --- a/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| +++ b/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| @@ -225,6 +225,27 @@ void setOnFillLayers(FillLayer* fillLayer, const AnimatableValue* value, StyleRe
|
| }
|
| }
|
|
|
| +FontWeight animatableValueToFontWeight(const AnimatableValue* value)
|
| +{
|
| + int index = round(toAnimatableDouble(value)->toDouble() / 100) - 1;
|
| +
|
| + static const FontWeight weights[] = {
|
| + FontWeight100,
|
| + FontWeight200,
|
| + FontWeight300,
|
| + FontWeight400,
|
| + FontWeight500,
|
| + FontWeight600,
|
| + FontWeight700,
|
| + FontWeight800,
|
| + FontWeight900
|
| + };
|
| +
|
| + index = clampTo<int>(index, 0, WTF_ARRAY_LENGTH(weights) - 1);
|
| +
|
| + return weights[index];
|
| +}
|
| +
|
| } // namespace
|
|
|
| // FIXME: Generate this function.
|
| @@ -351,6 +372,9 @@ void AnimatedStyleBuilder::applyProperty(CSSPropertyID property, StyleResolverSt
|
| case CSSPropertyFontSize:
|
| style->setFontSize(clampTo<float>(toAnimatableDouble(value)->toDouble(), 0));
|
| return;
|
| + case CSSPropertyFontWeight:
|
| + style->setFontWeight(animatableValueToFontWeight(value));
|
| + return;
|
| case CSSPropertyHeight:
|
| style->setHeight(animatableValueToLength(value, state, NonNegativeValues));
|
| return;
|
|
|