| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 computedTiming.setCurrentIteration(ensureCalculated().currentIteration); | 105 computedTiming.setCurrentIteration(ensureCalculated().currentIteration); |
| 106 } else { | 106 } else { |
| 107 computedTiming.setLocalTimeToNull(); | 107 computedTiming.setLocalTimeToNull(); |
| 108 computedTiming.setProgressToNull(); | 108 computedTiming.setProgressToNull(); |
| 109 computedTiming.setCurrentIterationToNull(); | 109 computedTiming.setCurrentIterationToNull(); |
| 110 } | 110 } |
| 111 | 111 |
| 112 // KeyframeEffectOptions members. | 112 // KeyframeEffectOptions members. |
| 113 computedTiming.setDelay(specifiedTiming().startDelay * 1000); | 113 computedTiming.setDelay(specifiedTiming().startDelay * 1000); |
| 114 computedTiming.setEndDelay(specifiedTiming().endDelay * 1000); | 114 computedTiming.setEndDelay(specifiedTiming().endDelay * 1000); |
| 115 computedTiming.setFill(Timing::fillModeString( | 115 computedTiming.setFill(Timing::fillModeString(resolvedFillMode( |
| 116 resolvedFillMode(specifiedTiming().fillMode, isKeyframeEffect()))); | 116 specifiedTiming().fillMode, isKeyframeEffectReadOnly()))); |
| 117 computedTiming.setIterationStart(specifiedTiming().iterationStart); | 117 computedTiming.setIterationStart(specifiedTiming().iterationStart); |
| 118 computedTiming.setIterations(specifiedTiming().iterationCount); | 118 computedTiming.setIterations(specifiedTiming().iterationCount); |
| 119 | 119 |
| 120 UnrestrictedDoubleOrString duration; | 120 UnrestrictedDoubleOrString duration; |
| 121 duration.setUnrestrictedDouble(iterationDuration() * 1000); | 121 duration.setUnrestrictedDouble(iterationDuration() * 1000); |
| 122 computedTiming.setDuration(duration); | 122 computedTiming.setDuration(duration); |
| 123 | 123 |
| 124 computedTiming.setDirection( | 124 computedTiming.setDirection( |
| 125 Timing::playbackDirectionString(specifiedTiming().direction)); | 125 Timing::playbackDirectionString(specifiedTiming().direction)); |
| 126 computedTiming.setEasing(specifiedTiming().timingFunction->toString()); | 126 computedTiming.setEasing(specifiedTiming().timingFunction->toString()); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 146 double timeToNextIteration = std::numeric_limits<double>::infinity(); | 146 double timeToNextIteration = std::numeric_limits<double>::infinity(); |
| 147 if (needsUpdate) { | 147 if (needsUpdate) { |
| 148 const double activeDuration = this->activeDurationInternal(); | 148 const double activeDuration = this->activeDurationInternal(); |
| 149 | 149 |
| 150 const Phase currentPhase = | 150 const Phase currentPhase = |
| 151 calculatePhase(activeDuration, localTime, m_timing); | 151 calculatePhase(activeDuration, localTime, m_timing); |
| 152 // FIXME: parentPhase depends on groups being implemented. | 152 // FIXME: parentPhase depends on groups being implemented. |
| 153 const AnimationEffectReadOnly::Phase parentPhase = | 153 const AnimationEffectReadOnly::Phase parentPhase = |
| 154 AnimationEffectReadOnly::PhaseActive; | 154 AnimationEffectReadOnly::PhaseActive; |
| 155 const double activeTime = calculateActiveTime( | 155 const double activeTime = calculateActiveTime( |
| 156 activeDuration, resolvedFillMode(m_timing.fillMode, isKeyframeEffect()), | 156 activeDuration, |
| 157 resolvedFillMode(m_timing.fillMode, isKeyframeEffectReadOnly()), |
| 157 localTime, parentPhase, currentPhase, m_timing); | 158 localTime, parentPhase, currentPhase, m_timing); |
| 158 | 159 |
| 159 double currentIteration; | 160 double currentIteration; |
| 160 double progress; | 161 double progress; |
| 161 if (const double iterationDuration = this->iterationDuration()) { | 162 if (const double iterationDuration = this->iterationDuration()) { |
| 162 const double startOffset = multiplyZeroAlwaysGivesZero( | 163 const double startOffset = multiplyZeroAlwaysGivesZero( |
| 163 m_timing.iterationStart, iterationDuration); | 164 m_timing.iterationStart, iterationDuration); |
| 164 DCHECK_GE(startOffset, 0); | 165 DCHECK_GE(startOffset, 0); |
| 165 const double scaledActiveTime = calculateScaledActiveTime( | 166 const double scaledActiveTime = calculateScaledActiveTime( |
| 166 activeDuration, activeTime, startOffset, m_timing); | 167 activeDuration, activeTime, startOffset, m_timing); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 : std::numeric_limits<double>::infinity(); | 200 : std::numeric_limits<double>::infinity(); |
| 200 DCHECK_GE(localActiveDuration, 0); | 201 DCHECK_GE(localActiveDuration, 0); |
| 201 const double localLocalTime = | 202 const double localLocalTime = |
| 202 localTime < m_timing.startDelay | 203 localTime < m_timing.startDelay |
| 203 ? localTime | 204 ? localTime |
| 204 : localActiveDuration + m_timing.startDelay; | 205 : localActiveDuration + m_timing.startDelay; |
| 205 const AnimationEffectReadOnly::Phase localCurrentPhase = | 206 const AnimationEffectReadOnly::Phase localCurrentPhase = |
| 206 calculatePhase(localActiveDuration, localLocalTime, m_timing); | 207 calculatePhase(localActiveDuration, localLocalTime, m_timing); |
| 207 const double localActiveTime = calculateActiveTime( | 208 const double localActiveTime = calculateActiveTime( |
| 208 localActiveDuration, | 209 localActiveDuration, |
| 209 resolvedFillMode(m_timing.fillMode, isKeyframeEffect()), | 210 resolvedFillMode(m_timing.fillMode, isKeyframeEffectReadOnly()), |
| 210 localLocalTime, parentPhase, localCurrentPhase, m_timing); | 211 localLocalTime, parentPhase, localCurrentPhase, m_timing); |
| 211 const double startOffset = | 212 const double startOffset = |
| 212 m_timing.iterationStart * localIterationDuration; | 213 m_timing.iterationStart * localIterationDuration; |
| 213 DCHECK_GE(startOffset, 0); | 214 DCHECK_GE(startOffset, 0); |
| 214 const double scaledActiveTime = calculateScaledActiveTime( | 215 const double scaledActiveTime = calculateScaledActiveTime( |
| 215 localActiveDuration, localActiveTime, startOffset, m_timing); | 216 localActiveDuration, localActiveTime, startOffset, m_timing); |
| 216 const double iterationTime = calculateIterationTime( | 217 const double iterationTime = calculateIterationTime( |
| 217 localIterationDuration, localRepeatedDuration, scaledActiveTime, | 218 localIterationDuration, localRepeatedDuration, scaledActiveTime, |
| 218 startOffset, currentPhase, m_timing); | 219 startOffset, currentPhase, m_timing); |
| 219 | 220 |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 AnimationEffectTimingReadOnly* AnimationEffectReadOnly::timing() { | 267 AnimationEffectTimingReadOnly* AnimationEffectReadOnly::timing() { |
| 267 return AnimationEffectTimingReadOnly::create(this); | 268 return AnimationEffectTimingReadOnly::create(this); |
| 268 } | 269 } |
| 269 | 270 |
| 270 DEFINE_TRACE(AnimationEffectReadOnly) { | 271 DEFINE_TRACE(AnimationEffectReadOnly) { |
| 271 visitor->trace(m_animation); | 272 visitor->trace(m_animation); |
| 272 visitor->trace(m_eventDelegate); | 273 visitor->trace(m_eventDelegate); |
| 273 } | 274 } |
| 274 | 275 |
| 275 } // namespace blink | 276 } // namespace blink |
| OLD | NEW |