| 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 "config.h" | 5 #include "config.h" |
| 6 #include "core/animation/AnimationNodeTiming.h" | 6 #include "core/animation/AnimationEffectTiming.h" |
| 7 | 7 |
| 8 #include "bindings/core/v8/UnionTypesCore.h" | 8 #include "bindings/core/v8/UnionTypesCore.h" |
| 9 #include "core/animation/Animation.h" | 9 #include "core/animation/AnimationEffect.h" |
| 10 #include "core/animation/AnimationNode.h" | 10 #include "core/animation/KeyframeEffect.h" |
| 11 #include "platform/animation/TimingFunction.h" | 11 #include "platform/animation/TimingFunction.h" |
| 12 | 12 |
| 13 namespace blink { | 13 namespace blink { |
| 14 | 14 |
| 15 PassRefPtrWillBeRawPtr<AnimationNodeTiming> AnimationNodeTiming::create(Animatio
nNode* parent) | 15 PassRefPtrWillBeRawPtr<AnimationEffectTiming> AnimationEffectTiming::create(Anim
ationEffect* parent) |
| 16 { | 16 { |
| 17 return adoptRefWillBeNoop(new AnimationNodeTiming(parent)); | 17 return adoptRefWillBeNoop(new AnimationEffectTiming(parent)); |
| 18 } | 18 } |
| 19 | 19 |
| 20 AnimationNodeTiming::AnimationNodeTiming(AnimationNode* parent) | 20 AnimationEffectTiming::AnimationEffectTiming(AnimationEffect* parent) |
| 21 : m_parent(parent) | 21 : m_parent(parent) |
| 22 { | 22 { |
| 23 } | 23 } |
| 24 | 24 |
| 25 double AnimationNodeTiming::delay() | 25 double AnimationEffectTiming::delay() |
| 26 { | 26 { |
| 27 return m_parent->specifiedTiming().startDelay * 1000; | 27 return m_parent->specifiedTiming().startDelay * 1000; |
| 28 } | 28 } |
| 29 | 29 |
| 30 double AnimationNodeTiming::endDelay() | 30 double AnimationEffectTiming::endDelay() |
| 31 { | 31 { |
| 32 return m_parent->specifiedTiming().endDelay * 1000; | 32 return m_parent->specifiedTiming().endDelay * 1000; |
| 33 } | 33 } |
| 34 | 34 |
| 35 String AnimationNodeTiming::fill() | 35 String AnimationEffectTiming::fill() |
| 36 { | 36 { |
| 37 return Timing::fillModeString(m_parent->specifiedTiming().fillMode); | 37 return Timing::fillModeString(m_parent->specifiedTiming().fillMode); |
| 38 } | 38 } |
| 39 | 39 |
| 40 double AnimationNodeTiming::iterationStart() | 40 double AnimationEffectTiming::iterationStart() |
| 41 { | 41 { |
| 42 return m_parent->specifiedTiming().iterationStart; | 42 return m_parent->specifiedTiming().iterationStart; |
| 43 } | 43 } |
| 44 | 44 |
| 45 double AnimationNodeTiming::iterations() | 45 double AnimationEffectTiming::iterations() |
| 46 { | 46 { |
| 47 return m_parent->specifiedTiming().iterationCount; | 47 return m_parent->specifiedTiming().iterationCount; |
| 48 } | 48 } |
| 49 | 49 |
| 50 void AnimationNodeTiming::duration(UnrestrictedDoubleOrString& returnValue) | 50 void AnimationEffectTiming::duration(UnrestrictedDoubleOrString& returnValue) |
| 51 { | 51 { |
| 52 if (std::isnan(m_parent->specifiedTiming().iterationDuration)) | 52 if (std::isnan(m_parent->specifiedTiming().iterationDuration)) |
| 53 returnValue.setString("auto"); | 53 returnValue.setString("auto"); |
| 54 else | 54 else |
| 55 returnValue.setUnrestrictedDouble(m_parent->specifiedTiming().iterationD
uration * 1000); | 55 returnValue.setUnrestrictedDouble(m_parent->specifiedTiming().iterationD
uration * 1000); |
| 56 } | 56 } |
| 57 | 57 |
| 58 double AnimationNodeTiming::playbackRate() | 58 double AnimationEffectTiming::playbackRate() |
| 59 { | 59 { |
| 60 return m_parent->specifiedTiming().playbackRate; | 60 return m_parent->specifiedTiming().playbackRate; |
| 61 } | 61 } |
| 62 | 62 |
| 63 String AnimationNodeTiming::direction() | 63 String AnimationEffectTiming::direction() |
| 64 { | 64 { |
| 65 return Timing::playbackDirectionString(m_parent->specifiedTiming().direction
); | 65 return Timing::playbackDirectionString(m_parent->specifiedTiming().direction
); |
| 66 } | 66 } |
| 67 | 67 |
| 68 String AnimationNodeTiming::easing() | 68 String AnimationEffectTiming::easing() |
| 69 { | 69 { |
| 70 return m_parent->specifiedTiming().timingFunction->toString(); | 70 return m_parent->specifiedTiming().timingFunction->toString(); |
| 71 } | 71 } |
| 72 | 72 |
| 73 void AnimationNodeTiming::setDelay(double delay) | 73 void AnimationEffectTiming::setDelay(double delay) |
| 74 { | 74 { |
| 75 Timing timing = m_parent->specifiedTiming(); | 75 Timing timing = m_parent->specifiedTiming(); |
| 76 TimingInput::setStartDelay(timing, delay); | 76 TimingInput::setStartDelay(timing, delay); |
| 77 m_parent->updateSpecifiedTiming(timing); | 77 m_parent->updateSpecifiedTiming(timing); |
| 78 } | 78 } |
| 79 | 79 |
| 80 void AnimationNodeTiming::setEndDelay(double endDelay) | 80 void AnimationEffectTiming::setEndDelay(double endDelay) |
| 81 { | 81 { |
| 82 Timing timing = m_parent->specifiedTiming(); | 82 Timing timing = m_parent->specifiedTiming(); |
| 83 TimingInput::setEndDelay(timing, endDelay); | 83 TimingInput::setEndDelay(timing, endDelay); |
| 84 m_parent->updateSpecifiedTiming(timing); | 84 m_parent->updateSpecifiedTiming(timing); |
| 85 } | 85 } |
| 86 | 86 |
| 87 void AnimationNodeTiming::setFill(String fill) | 87 void AnimationEffectTiming::setFill(String fill) |
| 88 { | 88 { |
| 89 Timing timing = m_parent->specifiedTiming(); | 89 Timing timing = m_parent->specifiedTiming(); |
| 90 TimingInput::setFillMode(timing, fill); | 90 TimingInput::setFillMode(timing, fill); |
| 91 m_parent->updateSpecifiedTiming(timing); | 91 m_parent->updateSpecifiedTiming(timing); |
| 92 } | 92 } |
| 93 | 93 |
| 94 void AnimationNodeTiming::setIterationStart(double iterationStart) | 94 void AnimationEffectTiming::setIterationStart(double iterationStart) |
| 95 { | 95 { |
| 96 Timing timing = m_parent->specifiedTiming(); | 96 Timing timing = m_parent->specifiedTiming(); |
| 97 TimingInput::setIterationStart(timing, iterationStart); | 97 TimingInput::setIterationStart(timing, iterationStart); |
| 98 m_parent->updateSpecifiedTiming(timing); | 98 m_parent->updateSpecifiedTiming(timing); |
| 99 } | 99 } |
| 100 | 100 |
| 101 void AnimationNodeTiming::setIterations(double iterations) | 101 void AnimationEffectTiming::setIterations(double iterations) |
| 102 { | 102 { |
| 103 Timing timing = m_parent->specifiedTiming(); | 103 Timing timing = m_parent->specifiedTiming(); |
| 104 TimingInput::setIterationCount(timing, iterations); | 104 TimingInput::setIterationCount(timing, iterations); |
| 105 m_parent->updateSpecifiedTiming(timing); | 105 m_parent->updateSpecifiedTiming(timing); |
| 106 } | 106 } |
| 107 | 107 |
| 108 void AnimationNodeTiming::setDuration(const UnrestrictedDoubleOrString& duration
OrAuto) | 108 void AnimationEffectTiming::setDuration(const UnrestrictedDoubleOrString& durati
onOrAuto) |
| 109 { | 109 { |
| 110 // Any strings other than "auto" are coerced to "auto". | 110 // Any strings other than "auto" are coerced to "auto". |
| 111 double duration = durationOrAuto.isString() ? std::numeric_limits<double>::q
uiet_NaN() : durationOrAuto.getAsUnrestrictedDouble(); | 111 double duration = durationOrAuto.isString() ? std::numeric_limits<double>::q
uiet_NaN() : durationOrAuto.getAsUnrestrictedDouble(); |
| 112 Timing timing = m_parent->specifiedTiming(); | 112 Timing timing = m_parent->specifiedTiming(); |
| 113 TimingInput::setIterationDuration(timing, duration); | 113 TimingInput::setIterationDuration(timing, duration); |
| 114 m_parent->updateSpecifiedTiming(timing); | 114 m_parent->updateSpecifiedTiming(timing); |
| 115 } | 115 } |
| 116 | 116 |
| 117 void AnimationNodeTiming::setPlaybackRate(double playbackRate) | 117 void AnimationEffectTiming::setPlaybackRate(double playbackRate) |
| 118 { | 118 { |
| 119 Timing timing = m_parent->specifiedTiming(); | 119 Timing timing = m_parent->specifiedTiming(); |
| 120 TimingInput::setPlaybackRate(timing, playbackRate); | 120 TimingInput::setPlaybackRate(timing, playbackRate); |
| 121 m_parent->updateSpecifiedTiming(timing); | 121 m_parent->updateSpecifiedTiming(timing); |
| 122 } | 122 } |
| 123 | 123 |
| 124 void AnimationNodeTiming::setDirection(String direction) | 124 void AnimationEffectTiming::setDirection(String direction) |
| 125 { | 125 { |
| 126 Timing timing = m_parent->specifiedTiming(); | 126 Timing timing = m_parent->specifiedTiming(); |
| 127 TimingInput::setPlaybackDirection(timing, direction); | 127 TimingInput::setPlaybackDirection(timing, direction); |
| 128 m_parent->updateSpecifiedTiming(timing); | 128 m_parent->updateSpecifiedTiming(timing); |
| 129 } | 129 } |
| 130 | 130 |
| 131 void AnimationNodeTiming::setEasing(String easing) | 131 void AnimationEffectTiming::setEasing(String easing) |
| 132 { | 132 { |
| 133 Timing timing = m_parent->specifiedTiming(); | 133 Timing timing = m_parent->specifiedTiming(); |
| 134 TimingInput::setTimingFunction(timing, easing); | 134 TimingInput::setTimingFunction(timing, easing); |
| 135 m_parent->updateSpecifiedTiming(timing); | 135 m_parent->updateSpecifiedTiming(timing); |
| 136 } | 136 } |
| 137 | 137 |
| 138 DEFINE_TRACE(AnimationNodeTiming) | 138 DEFINE_TRACE(AnimationEffectTiming) |
| 139 { | 139 { |
| 140 visitor->trace(m_parent); | 140 visitor->trace(m_parent); |
| 141 } | 141 } |
| 142 | 142 |
| 143 } // namespace blink | 143 } // namespace blink |
| OLD | NEW |