| 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 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 ASSERT(isInEffect()); | 165 ASSERT(isInEffect()); |
| 166 ASSERT(animation()); | 166 ASSERT(animation()); |
| 167 if (!m_target || !m_model) | 167 if (!m_target || !m_model) |
| 168 return; | 168 return; |
| 169 | 169 |
| 170 if (hasIncompatibleStyle()) | 170 if (hasIncompatibleStyle()) |
| 171 animation()->cancelAnimationOnCompositor(); | 171 animation()->cancelAnimationOnCompositor(); |
| 172 | 172 |
| 173 double iteration = currentIteration(); | 173 double iteration = currentIteration(); |
| 174 ASSERT(iteration >= 0); | 174 ASSERT(iteration >= 0); |
| 175 OwnPtrWillBeRawPtr<WillBeHeapVector<RefPtrWillBeMember<Interpolation>>> inte
rpolations = m_sampledEffect ? m_sampledEffect->mutableInterpolations() : nullpt
r; | 175 OwnPtr<Vector<RefPtr<Interpolation>>> interpolations = m_sampledEffect ? m_s
ampledEffect->mutableInterpolations() : nullptr; |
| 176 // FIXME: Handle iteration values which overflow int. | 176 // FIXME: Handle iteration values which overflow int. |
| 177 m_model->sample(static_cast<int>(iteration), timeFraction(), iterationDurati
on(), interpolations); | 177 m_model->sample(static_cast<int>(iteration), timeFraction(), iterationDurati
on(), interpolations); |
| 178 if (m_sampledEffect) { | 178 if (m_sampledEffect) { |
| 179 m_sampledEffect->setInterpolations(interpolations.release()); | 179 m_sampledEffect->setInterpolations(interpolations.release()); |
| 180 } else if (interpolations && !interpolations->isEmpty()) { | 180 } else if (interpolations && !interpolations->isEmpty()) { |
| 181 SampledEffect* sampledEffect = SampledEffect::create(this, interpolation
s.release()); | 181 SampledEffect* sampledEffect = SampledEffect::create(this, interpolation
s.release()); |
| 182 m_sampledEffect = sampledEffect; | 182 m_sampledEffect = sampledEffect; |
| 183 ensureAnimationStack(m_target).add(sampledEffect); | 183 ensureAnimationStack(m_target).add(sampledEffect); |
| 184 } else { | 184 } else { |
| 185 return; | 185 return; |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 361 | 361 |
| 362 DEFINE_TRACE(KeyframeEffect) | 362 DEFINE_TRACE(KeyframeEffect) |
| 363 { | 363 { |
| 364 visitor->trace(m_target); | 364 visitor->trace(m_target); |
| 365 visitor->trace(m_model); | 365 visitor->trace(m_model); |
| 366 visitor->trace(m_sampledEffect); | 366 visitor->trace(m_sampledEffect); |
| 367 AnimationEffect::trace(visitor); | 367 AnimationEffect::trace(visitor); |
| 368 } | 368 } |
| 369 | 369 |
| 370 } // namespace blink | 370 } // namespace blink |
| OLD | NEW |