| Index: cc/trees/layer_tree_host_unittest_animation.cc
|
| diff --git a/cc/trees/layer_tree_host_unittest_animation.cc b/cc/trees/layer_tree_host_unittest_animation.cc
|
| index fa4b88632b366eb61b42e1ec4be1cec63d25e3c9..171c155576f3f21586e43e211bb375148fa7f9ac 100644
|
| --- a/cc/trees/layer_tree_host_unittest_animation.cc
|
| +++ b/cc/trees/layer_tree_host_unittest_animation.cc
|
| @@ -18,9 +18,32 @@
|
| namespace cc {
|
| namespace {
|
|
|
| +class AlwaysUpdateLayer : public Layer {
|
| + public:
|
| + static scoped_refptr<AlwaysUpdateLayer> Create() {
|
| + return new AlwaysUpdateLayer();
|
| + }
|
| +
|
| + virtual bool DrawsContent() const OVERRIDE { return true; }
|
| + virtual bool Update(ResourceUpdateQueue* queue,
|
| + const OcclusionTracker* occlusion) OVERRIDE {
|
| + return true;
|
| + }
|
| +
|
| + private:
|
| + AlwaysUpdateLayer() {}
|
| + virtual ~AlwaysUpdateLayer() {}
|
| +};
|
| +
|
| class LayerTreeHostAnimationTest : public LayerTreeTest {
|
| public:
|
| virtual void SetupTree() OVERRIDE {
|
| + scoped_refptr<AlwaysUpdateLayer> root_layer = AlwaysUpdateLayer::Create();
|
| + root_layer->SetBounds(gfx::Size(1, 1));
|
| + root_layer->SetIsDrawable(true);
|
| + root_layer->SetScrollable(true);
|
| + layer_tree_host()->SetRootLayer(root_layer);
|
| +
|
| LayerTreeTest::SetupTree();
|
| layer_tree_host()->root_layer()->set_layer_animation_delegate(this);
|
| }
|
| @@ -445,9 +468,9 @@ class LayerTreeHostAnimationTestDoNotSkipLayersWithAnimatedOpacity
|
| }
|
|
|
| virtual void SetupTree() OVERRIDE {
|
| - update_check_layer_->SetOpacity(0.f);
|
| - layer_tree_host()->SetRootLayer(update_check_layer_);
|
| LayerTreeHostAnimationTest::SetupTree();
|
| + update_check_layer_->SetOpacity(0.f);
|
| + layer_tree_host()->root_layer()->AddChild(update_check_layer_);
|
| }
|
|
|
| virtual void BeginTest() OVERRIDE {
|
| @@ -455,23 +478,25 @@ class LayerTreeHostAnimationTestDoNotSkipLayersWithAnimatedOpacity
|
| }
|
|
|
| virtual void DidActivateTreeOnThread(LayerTreeHostImpl* host_impl) OVERRIDE {
|
| + LayerImpl* update_check_layer_impl =
|
| + host_impl->active_tree()->LayerById(update_check_layer_->id());
|
| LayerAnimationController* controller_impl =
|
| - host_impl->active_tree()->root_layer()->layer_animation_controller();
|
| + update_check_layer_impl->layer_animation_controller();
|
| Animation* animation_impl =
|
| controller_impl->GetAnimation(Animation::Opacity);
|
| controller_impl->RemoveAnimation(animation_impl->id());
|
| EndTest();
|
| }
|
|
|
| - virtual void AfterTest() OVERRIDE {
|
| + virtual void DidCommit() OVERRIDE {
|
| // Update() should have been called once, proving that the layer was not
|
| // skipped.
|
| EXPECT_EQ(1u, update_check_layer_->update_count());
|
| -
|
| - // clear update_check_layer_ so LayerTreeHost dies.
|
| - update_check_layer_ = NULL;
|
| + update_check_layer_->reset_update_count();
|
| }
|
|
|
| + virtual void AfterTest() OVERRIDE {}
|
| +
|
| private:
|
| FakeContentLayerClient client_;
|
| scoped_refptr<FakeContentLayer> update_check_layer_;
|
|
|