| 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 485 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 496 DCHECK(m_transitions.contains(id)); | 496 DCHECK(m_transitions.contains(id)); |
| 497 | 497 |
| 498 Animation* animation = m_transitions.take(id).animation; | 498 Animation* animation = m_transitions.take(id).animation; |
| 499 KeyframeEffectReadOnly* effect = | 499 KeyframeEffectReadOnly* effect = |
| 500 toKeyframeEffectReadOnly(animation->effect()); | 500 toKeyframeEffectReadOnly(animation->effect()); |
| 501 if (effect->hasActiveAnimationsOnCompositor(id) && | 501 if (effect->hasActiveAnimationsOnCompositor(id) && |
| 502 m_pendingUpdate.newTransitions().find(id) != | 502 m_pendingUpdate.newTransitions().find(id) != |
| 503 m_pendingUpdate.newTransitions().end() && | 503 m_pendingUpdate.newTransitions().end() && |
| 504 !animation->limited()) | 504 !animation->limited()) |
| 505 retargetedCompositorTransitions.insert( | 505 retargetedCompositorTransitions.insert( |
| 506 id, std::pair<KeyframeEffectReadOnly*, double>( | 506 id, |
| 507 effect, animation->startTimeInternal())); | 507 std::pair<KeyframeEffectReadOnly*, double>( |
| 508 effect, animation->startTimeInternal())); |
| 508 animation->cancel(); | 509 animation->cancel(); |
| 509 // after cancelation, transitions must be downgraded or they'll fail | 510 // after cancelation, transitions must be downgraded or they'll fail |
| 510 // to be considered when retriggering themselves. This can happen if | 511 // to be considered when retriggering themselves. This can happen if |
| 511 // the transition is captured through getAnimations then played. | 512 // the transition is captured through getAnimations then played. |
| 512 if (animation->effect() && animation->effect()->isKeyframeEffectReadOnly()) | 513 if (animation->effect() && animation->effect()->isKeyframeEffectReadOnly()) |
| 513 toKeyframeEffectReadOnly(animation->effect())->downgradeToNormal(); | 514 toKeyframeEffectReadOnly(animation->effect())->downgradeToNormal(); |
| 514 animation->update(TimingUpdateOnDemand); | 515 animation->update(TimingUpdateOnDemand); |
| 515 } | 516 } |
| 516 | 517 |
| 517 for (CSSPropertyID id : m_pendingUpdate.finishedTransitions()) { | 518 for (CSSPropertyID id : m_pendingUpdate.finishedTransitions()) { |
| (...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1068 isCustomPropertyHandle); | 1069 isCustomPropertyHandle); |
| 1069 } | 1070 } |
| 1070 | 1071 |
| 1071 DEFINE_TRACE(CSSAnimations) { | 1072 DEFINE_TRACE(CSSAnimations) { |
| 1072 visitor->trace(m_transitions); | 1073 visitor->trace(m_transitions); |
| 1073 visitor->trace(m_pendingUpdate); | 1074 visitor->trace(m_pendingUpdate); |
| 1074 visitor->trace(m_runningAnimations); | 1075 visitor->trace(m_runningAnimations); |
| 1075 } | 1076 } |
| 1076 | 1077 |
| 1077 } // namespace blink | 1078 } // namespace blink |
| OLD | NEW |