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) |
dstockwell
2014/02/24 04:58:40
need a fixme about why
rjwright
2014/02/24 11:17:46
Done as comment. Do you want it to be a fixme?
|
+ animation->setTimingFunction(timingFunction); |
+ } |
} |
void CSSToStyleMap::mapNinePieceImage(RenderStyle* mutableStyle, CSSPropertyID property, CSSValue* value, NinePieceImage& image) |