| Index: Source/core/css/resolver/CSSToStyleMap.cpp
|
| diff --git a/Source/core/css/resolver/CSSToStyleMap.cpp b/Source/core/css/resolver/CSSToStyleMap.cpp
|
| index 406b16c3d5bf155e03b5a1fc63cd26f9a542f4fc..c8c2a435c98030056faaaecb3b45d2116b7d27b5 100644
|
| --- a/Source/core/css/resolver/CSSToStyleMap.cpp
|
| +++ b/Source/core/css/resolver/CSSToStyleMap.cpp
|
| @@ -475,6 +475,9 @@ PassRefPtr<TimingFunction> CSSToStyleMap::animationTimingFunction(CSSValue* valu
|
| case CSSValueStepStart:
|
| return StepsTimingFunction::preset(StepsTimingFunction::Start);
|
| break;
|
| + case CSSValueStepMiddle:
|
| + return StepsTimingFunction::preset(StepsTimingFunction::Middle);
|
| + break;
|
| case CSSValueStepEnd:
|
| return StepsTimingFunction::preset(StepsTimingFunction::End);
|
| break;
|
| @@ -489,7 +492,7 @@ PassRefPtr<TimingFunction> CSSToStyleMap::animationTimingFunction(CSSValue* valu
|
| return CubicBezierTimingFunction::create(cubicTimingFunction->x1(), cubicTimingFunction->y1(), cubicTimingFunction->x2(), cubicTimingFunction->y2());
|
| } else if (value->isStepsTimingFunctionValue()) {
|
| CSSStepsTimingFunctionValue* stepsTimingFunction = toCSSStepsTimingFunctionValue(value);
|
| - return StepsTimingFunction::create(stepsTimingFunction->numberOfSteps(), stepsTimingFunction->stepAtStart());
|
| + return StepsTimingFunction::create(stepsTimingFunction->numberOfSteps(), stepsTimingFunction->stepAtPosition());
|
| }
|
|
|
| return 0;
|
| @@ -498,8 +501,11 @@ PassRefPtr<TimingFunction> CSSToStyleMap::animationTimingFunction(CSSValue* valu
|
| void CSSToStyleMap::mapAnimationTimingFunction(CSSAnimationData* animation, CSSValue* value) const
|
| {
|
| RefPtr<TimingFunction> timingFunction = animationTimingFunction(value, true);
|
| - if (timingFunction)
|
| - animation->setTimingFunction(timingFunction);
|
| + if (timingFunction) {
|
| + bool isStepMiddleFunction = (timingFunction->type() == TimingFunction::StepsFunction) && (toStepsTimingFunction(*timingFunction).stepAtPosition() == StepsTimingFunction::StepAtMiddle);
|
| + if (!isStepMiddleFunction)
|
| + animation->setTimingFunction(timingFunction);
|
| + }
|
| }
|
|
|
| void CSSToStyleMap::mapNinePieceImage(RenderStyle* mutableStyle, CSSPropertyID property, CSSValue* value, NinePieceImage& image)
|
|
|