Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(126)

Unified Diff: third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp

Issue 1906463002: Web Animations: Throw TypeErrors for invalid timing parameters (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix unit tests Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp
diff --git a/third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp b/third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp
index 9135e0cbe4784c9c62758ce4ef01b42fe8b127e1..3732579ffbf2ba87f53c61553c03411b2e9da536 100644
--- a/third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp
+++ b/third_party/WebKit/Source/core/animation/AnimationEffectTiming.cpp
@@ -91,27 +91,25 @@ void AnimationEffectTiming::setFill(String fill)
m_parent->updateSpecifiedTiming(timing);
}
-void AnimationEffectTiming::setIterationStart(double iterationStart)
+void AnimationEffectTiming::setIterationStart(double iterationStart, ExceptionState& exceptionState)
{
Timing timing = m_parent->specifiedTiming();
- TimingInput::setIterationStart(timing, iterationStart);
- m_parent->updateSpecifiedTiming(timing);
+ if (TimingInput::setIterationStart(timing, iterationStart, exceptionState))
+ m_parent->updateSpecifiedTiming(timing);
}
-void AnimationEffectTiming::setIterations(double iterations)
+void AnimationEffectTiming::setIterations(double iterations, ExceptionState& exceptionState)
{
Timing timing = m_parent->specifiedTiming();
- TimingInput::setIterationCount(timing, iterations);
- m_parent->updateSpecifiedTiming(timing);
+ if (TimingInput::setIterationCount(timing, iterations, exceptionState))
+ m_parent->updateSpecifiedTiming(timing);
}
-void AnimationEffectTiming::setDuration(const UnrestrictedDoubleOrString& durationOrAuto)
+void AnimationEffectTiming::setDuration(const UnrestrictedDoubleOrString& duration, ExceptionState& exceptionState)
{
- // Any strings other than "auto" are coerced to "auto".
- double duration = durationOrAuto.isString() ? std::numeric_limits<double>::quiet_NaN() : durationOrAuto.getAsUnrestrictedDouble();
Timing timing = m_parent->specifiedTiming();
- TimingInput::setIterationDuration(timing, duration);
- m_parent->updateSpecifiedTiming(timing);
+ if (TimingInput::setIterationDuration(timing, duration, exceptionState))
+ m_parent->updateSpecifiedTiming(timing);
}
void AnimationEffectTiming::setPlaybackRate(double playbackRate)

Powered by Google App Engine
This is Rietveld 408576698