| 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 26 matching lines...) Expand all Loading... |
| 37 #include "core/animation/CompositorAnimationsImpl.h" | 37 #include "core/animation/CompositorAnimationsImpl.h" |
| 38 #include "core/animation/CompositorAnimationsTestHelper.h" | 38 #include "core/animation/CompositorAnimationsTestHelper.h" |
| 39 #include "core/animation/ElementAnimations.h" | 39 #include "core/animation/ElementAnimations.h" |
| 40 #include "core/animation/KeyframeEffect.h" | 40 #include "core/animation/KeyframeEffect.h" |
| 41 #include "core/animation/animatable/AnimatableDouble.h" | 41 #include "core/animation/animatable/AnimatableDouble.h" |
| 42 #include "core/animation/animatable/AnimatableFilterOperations.h" | 42 #include "core/animation/animatable/AnimatableFilterOperations.h" |
| 43 #include "core/animation/animatable/AnimatableTransform.h" | 43 #include "core/animation/animatable/AnimatableTransform.h" |
| 44 #include "core/animation/animatable/AnimatableValueTestHelper.h" | 44 #include "core/animation/animatable/AnimatableValueTestHelper.h" |
| 45 #include "core/dom/Document.h" | 45 #include "core/dom/Document.h" |
| 46 #include "core/layout/LayoutObject.h" | 46 #include "core/layout/LayoutObject.h" |
| 47 #include "core/testing/DummyPageHolder.h" |
| 47 #include "platform/geometry/FloatBox.h" | 48 #include "platform/geometry/FloatBox.h" |
| 48 #include "platform/geometry/IntSize.h" | 49 #include "platform/geometry/IntSize.h" |
| 49 #include "platform/graphics/filters/FilterOperations.h" | 50 #include "platform/graphics/filters/FilterOperations.h" |
| 50 #include "platform/transforms/TransformOperations.h" | 51 #include "platform/transforms/TransformOperations.h" |
| 51 #include "platform/transforms/TranslateTransformOperation.h" | 52 #include "platform/transforms/TranslateTransformOperation.h" |
| 52 #include "public/platform/WebCompositorAnimation.h" | 53 #include "public/platform/WebCompositorAnimation.h" |
| 53 #include "wtf/HashFunctions.h" | 54 #include "wtf/HashFunctions.h" |
| 54 #include "wtf/OwnPtr.h" | 55 #include "wtf/OwnPtr.h" |
| 55 #include "wtf/PassOwnPtr.h" | 56 #include "wtf/PassOwnPtr.h" |
| 56 #include "wtf/PassRefPtr.h" | 57 #include "wtf/PassRefPtr.h" |
| (...skipping 19 matching lines...) Expand all Loading... |
| 76 Timing m_timing; | 77 Timing m_timing; |
| 77 CompositorAnimationsImpl::CompositorTiming m_compositorTiming; | 78 CompositorAnimationsImpl::CompositorTiming m_compositorTiming; |
| 78 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector2; | 79 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector2; |
| 79 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect2; | 80 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect2; |
| 80 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector5; | 81 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector5; |
| 81 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect5; | 82 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect5; |
| 82 | 83 |
| 83 RefPtrWillBePersistent<Document> m_document; | 84 RefPtrWillBePersistent<Document> m_document; |
| 84 RefPtrWillBePersistent<Element> m_element; | 85 RefPtrWillBePersistent<Element> m_element; |
| 85 Persistent<AnimationTimeline> m_timeline; | 86 Persistent<AnimationTimeline> m_timeline; |
| 87 OwnPtr<DummyPageHolder> m_pageHolder; |
| 86 | 88 |
| 87 virtual void SetUp() | 89 virtual void SetUp() |
| 88 { | 90 { |
| 89 AnimationCompositorAnimationsTestBase::SetUp(); | 91 AnimationCompositorAnimationsTestBase::SetUp(); |
| 90 | 92 |
| 91 m_linearTimingFunction = LinearTimingFunction::shared(); | 93 m_linearTimingFunction = LinearTimingFunction::shared(); |
| 92 m_cubicEaseTimingFunction = CubicBezierTimingFunction::preset(CubicBezie
rTimingFunction::Ease); | 94 m_cubicEaseTimingFunction = CubicBezierTimingFunction::preset(CubicBezie
rTimingFunction::Ease); |
| 93 m_cubicCustomTimingFunction = CubicBezierTimingFunction::create(1, 2, 3,
4); | 95 m_cubicCustomTimingFunction = CubicBezierTimingFunction::create(1, 2, 3,
4); |
| 94 m_stepTimingFunction = StepsTimingFunction::create(1, StepsTimingFunctio
n::End); | 96 m_stepTimingFunction = StepsTimingFunction::create(1, StepsTimingFunctio
n::End); |
| 95 | 97 |
| 96 m_timing = createCompositableTiming(); | 98 m_timing = createCompositableTiming(); |
| 97 m_compositorTiming = CompositorAnimationsImpl::CompositorTiming(); | 99 m_compositorTiming = CompositorAnimationsImpl::CompositorTiming(); |
| 98 // Make sure the CompositableTiming is really compositable, otherwise | 100 // Make sure the CompositableTiming is really compositable, otherwise |
| 99 // most other tests will fail. | 101 // most other tests will fail. |
| 100 ASSERT(convertTimingForCompositor(m_timing, m_compositorTiming)); | 102 ASSERT(convertTimingForCompositor(m_timing, m_compositorTiming)); |
| 101 | 103 |
| 102 m_keyframeVector2 = createCompositableFloatKeyframeVector(2); | 104 m_keyframeVector2 = createCompositableFloatKeyframeVector(2); |
| 103 m_keyframeAnimationEffect2 = AnimatableValueKeyframeEffectModel::create(
*m_keyframeVector2); | 105 m_keyframeAnimationEffect2 = AnimatableValueKeyframeEffectModel::create(
*m_keyframeVector2); |
| 104 | 106 |
| 105 m_keyframeVector5 = createCompositableFloatKeyframeVector(5); | 107 m_keyframeVector5 = createCompositableFloatKeyframeVector(5); |
| 106 m_keyframeAnimationEffect5 = AnimatableValueKeyframeEffectModel::create(
*m_keyframeVector5); | 108 m_keyframeAnimationEffect5 = AnimatableValueKeyframeEffectModel::create(
*m_keyframeVector5); |
| 107 | 109 |
| 108 m_document = Document::create(); | 110 m_pageHolder = DummyPageHolder::create(); |
| 111 m_document = &m_pageHolder->document(); |
| 109 m_document->animationClock().resetTimeForTesting(); | 112 m_document->animationClock().resetTimeForTesting(); |
| 110 m_timeline = AnimationTimeline::create(m_document.get()); | 113 m_timeline = AnimationTimeline::create(m_document.get()); |
| 114 m_timeline->resetForTesting(); |
| 111 m_element = m_document->createElement("test", ASSERT_NO_EXCEPTION); | 115 m_element = m_document->createElement("test", ASSERT_NO_EXCEPTION); |
| 112 } | 116 } |
| 113 | 117 |
| 114 public: | 118 public: |
| 115 | 119 |
| 116 bool convertTimingForCompositor(const Timing& t, CompositorAnimationsImpl::C
ompositorTiming& out) | 120 bool convertTimingForCompositor(const Timing& t, CompositorAnimationsImpl::C
ompositorTiming& out) |
| 117 { | 121 { |
| 118 return CompositorAnimationsImpl::convertTimingForCompositor(t, 0, out, 1
); | 122 return CompositorAnimationsImpl::convertTimingForCompositor(t, 0, out, 1
); |
| 119 } | 123 } |
| 120 bool isCandidateForAnimationOnCompositor(const Timing& timing, const EffectM
odel& effect) | 124 bool isCandidateForAnimationOnCompositor(const Timing& timing, const EffectM
odel& effect) |
| (...skipping 1121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1242 simulateFrame(1.); | 1246 simulateFrame(1.); |
| 1243 | 1247 |
| 1244 element->setLayoutObject(nullptr); | 1248 element->setLayoutObject(nullptr); |
| 1245 LayoutObjectProxy::dispose(layoutObject); | 1249 LayoutObjectProxy::dispose(layoutObject); |
| 1246 | 1250 |
| 1247 Heap::collectAllGarbage(); | 1251 Heap::collectAllGarbage(); |
| 1248 EXPECT_TRUE(element->elementAnimations()->animations().isEmpty()); | 1252 EXPECT_TRUE(element->elementAnimations()->animations().isEmpty()); |
| 1249 } | 1253 } |
| 1250 | 1254 |
| 1251 } // namespace blink | 1255 } // namespace blink |
| OLD | NEW |