Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2634)

Unified Diff: cc/layer_tree_host_unittest_animation.cc

Issue 11598005: Ref count layer animation controllers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/layer_tree_host_impl.cc ('k') | cc/layer_tree_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layer_tree_host_unittest_animation.cc
diff --git a/cc/layer_tree_host_unittest_animation.cc b/cc/layer_tree_host_unittest_animation.cc
index 384fbb3d4f8767f5a7fd1d457da85b7945686f9a..42d7f1df62442030fd2897ccbce5971ed7e68240 100644
--- a/cc/layer_tree_host_unittest_animation.cc
+++ b/cc/layer_tree_host_unittest_animation.cc
@@ -124,11 +124,12 @@ class LayerTreeHostAnimationTestAddAnimation :
virtual void animateLayers(
LayerTreeHostImpl* impl_host,
- base::TimeTicks monotonic_time) OVERRIDE {
+ base::TimeTicks monotonic_time,
+ bool hasUnfinishedAnimation) OVERRIDE {
if (!num_animates_) {
// The animation had zero duration so layerTreeHostImpl should no
// longer need to animate its layers.
- EXPECT_FALSE(impl_host->needsAnimateLayers());
+ EXPECT_FALSE(hasUnfinishedAnimation);
num_animates_++;
first_monotonic_time_ = monotonic_time;
return;
@@ -169,7 +170,8 @@ class LayerTreeHostAnimationTestCheckerboardDoesNotStarveDraws :
virtual void animateLayers(
LayerTreeHostImpl* host_impl,
- base::TimeTicks monotonicTime) OVERRIDE {
+ base::TimeTicks monotonicTime,
+ bool hasUnfinishedAnimation) OVERRIDE {
started_animating_ = true;
}
@@ -242,7 +244,8 @@ public:
virtual void animateLayers(
LayerTreeHostImpl* host_impl,
- base::TimeTicks monotonicTime) OVERRIDE {
+ base::TimeTicks monotonicTime,
+ bool hasUnfinishedAnimation) OVERRIDE {
LayerAnimationController* controller =
m_layerTreeHost->rootLayer()->layerAnimationController();
ActiveAnimation* animation =
@@ -306,7 +309,8 @@ class LayerTreeHostAnimationTestSynchronizeAnimationStartTimes :
virtual void animateLayers(
LayerTreeHostImpl* impl_host,
- base::TimeTicks monotonicTime) OVERRIDE {
+ base::TimeTicks monotonicTime,
+ bool hasUnfinishedAnimation) OVERRIDE {
LayerAnimationController* controller =
impl_host->rootLayer()->layerAnimationController();
ActiveAnimation* animation =
@@ -402,37 +406,37 @@ MULTI_THREAD_TEST_F(
class LayerTreeHostAnimationTestLayerAddedWithAnimation :
public LayerTreeHostAnimationTest {
public:
- LayerTreeHostAnimationTestLayerAddedWithAnimation()
- : added_animation_(false) {
- }
+ LayerTreeHostAnimationTestLayerAddedWithAnimation() { }
virtual void beginTest() OVERRIDE {
- EXPECT_FALSE(added_animation_);
-
- scoped_refptr<Layer> layer = Layer::create();
- layer->setLayerAnimationDelegate(this);
-
- // Any valid AnimationCurve will do here.
- scoped_ptr<AnimationCurve> curve(EaseTimingFunction::create());
- scoped_ptr<ActiveAnimation> animation(
- ActiveAnimation::create(curve.Pass(), 1, 1, ActiveAnimation::Opacity));
- layer->layerAnimationController()->addAnimation(animation.Pass());
-
- // We add the animation *before* attaching the layer to the tree.
- m_layerTreeHost->rootLayer()->addChild(layer);
- EXPECT_TRUE(added_animation_);
+ postSetNeedsCommitToMainThread();
+ }
- endTest();
+ virtual void didCommit() OVERRIDE {
+ if (m_layerTreeHost->commitNumber() == 1) {
+ scoped_refptr<Layer> layer = Layer::create();
+ layer->setLayerAnimationDelegate(this);
+
+ // Any valid AnimationCurve will do here.
+ scoped_ptr<AnimationCurve> curve(EaseTimingFunction::create());
+ scoped_ptr<ActiveAnimation> animation(
+ ActiveAnimation::create(curve.Pass(), 1, 1,
+ ActiveAnimation::Opacity));
+ layer->layerAnimationController()->addAnimation(animation.Pass());
+
+ // We add the animation *before* attaching the layer to the tree.
+ m_layerTreeHost->rootLayer()->addChild(layer);
+ }
}
- virtual void didAddAnimation() OVERRIDE {
- added_animation_ = true;
+ virtual void animateLayers(
+ LayerTreeHostImpl* impl_host,
+ base::TimeTicks monotonic_time,
+ bool hasUnfinishedAnimation) OVERRIDE {
+ endTest();
}
virtual void afterTest() OVERRIDE {}
-
-private:
- bool added_animation_;
};
SINGLE_AND_MULTI_THREAD_TEST_F(
« no previous file with comments | « cc/layer_tree_host_impl.cc ('k') | cc/layer_tree_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698