| Index: Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| diff --git a/Source/core/css/resolver/AnimatedStyleBuilder.cpp b/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| index d810f0bf0832edb452b78a5b8e6986bf369fbb45..71dd52413d17f9935cb7404d768140e6407ff00f 100644
|
| --- a/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| +++ b/Source/core/css/resolver/AnimatedStyleBuilder.cpp
|
| @@ -263,6 +263,14 @@ FontDescription::Size animatableValueToFontSize(const AnimatableValue* value)
|
| return FontDescription::Size(0, size, true);
|
| }
|
|
|
| +TransformOperation* animatableValueToTransformOperation(const AnimatableValue* value, TransformOperation::OperationType type)
|
| +{
|
| + const TransformOperations& transformList = toAnimatableTransform(value)->transformOperations();
|
| + ASSERT(transformList.size() == 1);
|
| + ASSERT(transformList.operations()[0]->type() == type);
|
| + return transformList.operations()[0].get();
|
| +}
|
| +
|
| } // namespace
|
|
|
| // FIXME: Generate this function.
|
| @@ -597,6 +605,18 @@ void AnimatedStyleBuilder::applyProperty(CSSPropertyID property, StyleResolverSt
|
| style->setTransform(operations.size() ? operations : TransformOperations(true));
|
| return;
|
| }
|
| + case CSSPropertyTranslate: {
|
| + style->setTranslate(toTranslateTransformOperation(animatableValueToTransformOperation(value, TransformOperation::Translate3D)));
|
| + return;
|
| + }
|
| + case CSSPropertyRotate: {
|
| + style->setRotate(toRotateTransformOperation(animatableValueToTransformOperation(value, TransformOperation::Rotate3D)));
|
| + return;
|
| + }
|
| + case CSSPropertyScale: {
|
| + style->setScale(toScaleTransformOperation(animatableValueToTransformOperation(value, TransformOperation::Scale3D)));
|
| + return;
|
| + }
|
| case CSSPropertyTransformOrigin:
|
| style->setTransformOrigin(animatableValueToTransformOrigin(value, state));
|
| return;
|
|
|