| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/animation/AnimationEffectTiming.h" | 5 #include "core/animation/AnimationEffectTiming.h" |
| 6 | 6 |
| 7 #include "bindings/core/v8/ExceptionState.h" | 7 #include "bindings/core/v8/ExceptionState.h" |
| 8 #include "bindings/core/v8/UnrestrictedDoubleOrString.h" | 8 #include "bindings/core/v8/UnrestrictedDoubleOrString.h" |
| 9 #include "core/animation/AnimationEffect.h" | 9 #include "core/animation/AnimationEffect.h" |
| 10 #include "core/animation/KeyframeEffect.h" | 10 #include "core/animation/KeyframeEffect.h" |
| 11 #include "core/dom/Document.h" |
| 11 #include "platform/animation/TimingFunction.h" | 12 #include "platform/animation/TimingFunction.h" |
| 12 | 13 |
| 13 namespace blink { | 14 namespace blink { |
| 14 | 15 |
| 15 AnimationEffectTiming* AnimationEffectTiming::create(AnimationEffect* parent) | 16 AnimationEffectTiming* AnimationEffectTiming::create(AnimationEffect* parent) |
| 16 { | 17 { |
| 17 return new AnimationEffectTiming(parent); | 18 return new AnimationEffectTiming(parent); |
| 18 } | 19 } |
| 19 | 20 |
| 20 AnimationEffectTiming::AnimationEffectTiming(AnimationEffect* parent) | 21 AnimationEffectTiming::AnimationEffectTiming(AnimationEffect* parent) |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 m_parent->updateSpecifiedTiming(timing); | 120 m_parent->updateSpecifiedTiming(timing); |
| 120 } | 121 } |
| 121 | 122 |
| 122 void AnimationEffectTiming::setDirection(String direction) | 123 void AnimationEffectTiming::setDirection(String direction) |
| 123 { | 124 { |
| 124 Timing timing = m_parent->specifiedTiming(); | 125 Timing timing = m_parent->specifiedTiming(); |
| 125 TimingInput::setPlaybackDirection(timing, direction); | 126 TimingInput::setPlaybackDirection(timing, direction); |
| 126 m_parent->updateSpecifiedTiming(timing); | 127 m_parent->updateSpecifiedTiming(timing); |
| 127 } | 128 } |
| 128 | 129 |
| 129 void AnimationEffectTiming::setEasing(String easing, ExceptionState& exceptionSt
ate) | 130 void AnimationEffectTiming::setEasing(ExecutionContext* executionContext, String
easing, ExceptionState& exceptionState) |
| 130 { | 131 { |
| 131 Timing timing = m_parent->specifiedTiming(); | 132 Timing timing = m_parent->specifiedTiming(); |
| 132 // The AnimationEffectTiming might not be attached to a document at this | 133 if (TimingInput::setTimingFunction(timing, easing, toDocument(*executionCont
ext), exceptionState)) |
| 133 // point, so we pass nullptr in to setTimingFunction. This means that these | |
| 134 // calls are not considered in the WebAnimationsEasingAsFunction* | |
| 135 // UseCounters, but the bug we are tracking there does not come through | |
| 136 // this interface. | |
| 137 if (TimingInput::setTimingFunction(timing, easing, nullptr, exceptionState)) | |
| 138 m_parent->updateSpecifiedTiming(timing); | 134 m_parent->updateSpecifiedTiming(timing); |
| 139 } | 135 } |
| 140 | 136 |
| 141 DEFINE_TRACE(AnimationEffectTiming) | 137 DEFINE_TRACE(AnimationEffectTiming) |
| 142 { | 138 { |
| 143 visitor->trace(m_parent); | 139 visitor->trace(m_parent); |
| 144 } | 140 } |
| 145 | 141 |
| 146 } // namespace blink | 142 } // namespace blink |
| OLD | NEW |