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

Side by Side Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 441863002: cc: Make sure mask and replica layers get DidBecomeActive signal. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 months 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « cc/test/fake_picture_layer_impl.cc ('k') | cc/trees/layer_tree_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 6746 matching lines...) Expand 10 before | Expand all | Expand 10 after
6757 pending_layer->set_twin_layer(active_layer.get()); 6757 pending_layer->set_twin_layer(active_layer.get());
6758 6758
6759 layer_pairs.clear(); 6759 layer_pairs.clear();
6760 host_impl_->GetPictureLayerImplPairs(&layer_pairs); 6760 host_impl_->GetPictureLayerImplPairs(&layer_pairs);
6761 EXPECT_EQ(1u, layer_pairs.size()); 6761 EXPECT_EQ(1u, layer_pairs.size());
6762 6762
6763 EXPECT_EQ(active_layer.get(), layer_pairs[0].active); 6763 EXPECT_EQ(active_layer.get(), layer_pairs[0].active);
6764 EXPECT_EQ(pending_layer.get(), layer_pairs[0].pending); 6764 EXPECT_EQ(pending_layer.get(), layer_pairs[0].pending);
6765 } 6765 }
6766 6766
6767 TEST_F(LayerTreeHostImplTest, DidBecomeActive) {
6768 host_impl_->CreatePendingTree();
6769 host_impl_->ActivateSyncTree();
6770 host_impl_->CreatePendingTree();
6771
6772 LayerTreeImpl* pending_tree = host_impl_->pending_tree();
6773
6774 scoped_ptr<FakePictureLayerImpl> pending_layer =
6775 FakePictureLayerImpl::Create(pending_tree, 10);
6776 pending_layer->DoPostCommitInitializationIfNeeded();
6777 FakePictureLayerImpl* raw_pending_layer = pending_layer.get();
6778 pending_tree->SetRootLayer(pending_layer.PassAs<LayerImpl>());
6779 ASSERT_EQ(raw_pending_layer, pending_tree->root_layer());
6780
6781 EXPECT_EQ(0u, raw_pending_layer->did_become_active_call_count());
6782 pending_tree->DidBecomeActive();
6783 EXPECT_EQ(1u, raw_pending_layer->did_become_active_call_count());
6784
6785 scoped_ptr<FakePictureLayerImpl> mask_layer =
6786 FakePictureLayerImpl::Create(pending_tree, 11);
6787 mask_layer->DoPostCommitInitializationIfNeeded();
6788 FakePictureLayerImpl* raw_mask_layer = mask_layer.get();
6789 raw_pending_layer->SetMaskLayer(mask_layer.PassAs<LayerImpl>());
6790 ASSERT_EQ(raw_mask_layer, raw_pending_layer->mask_layer());
6791
6792 EXPECT_EQ(1u, raw_pending_layer->did_become_active_call_count());
6793 EXPECT_EQ(0u, raw_mask_layer->did_become_active_call_count());
6794 pending_tree->DidBecomeActive();
6795 EXPECT_EQ(2u, raw_pending_layer->did_become_active_call_count());
6796 EXPECT_EQ(1u, raw_mask_layer->did_become_active_call_count());
6797
6798 scoped_ptr<FakePictureLayerImpl> replica_layer =
6799 FakePictureLayerImpl::Create(pending_tree, 12);
6800 scoped_ptr<FakePictureLayerImpl> replica_mask_layer =
6801 FakePictureLayerImpl::Create(pending_tree, 13);
6802 replica_mask_layer->DoPostCommitInitializationIfNeeded();
6803 FakePictureLayerImpl* raw_replica_mask_layer = replica_mask_layer.get();
6804 replica_layer->SetMaskLayer(replica_mask_layer.PassAs<LayerImpl>());
6805 raw_pending_layer->SetReplicaLayer(replica_layer.PassAs<LayerImpl>());
6806 ASSERT_EQ(raw_replica_mask_layer,
6807 raw_pending_layer->replica_layer()->mask_layer());
6808
6809 EXPECT_EQ(2u, raw_pending_layer->did_become_active_call_count());
6810 EXPECT_EQ(1u, raw_mask_layer->did_become_active_call_count());
6811 EXPECT_EQ(0u, raw_replica_mask_layer->did_become_active_call_count());
6812 pending_tree->DidBecomeActive();
6813 EXPECT_EQ(3u, raw_pending_layer->did_become_active_call_count());
6814 EXPECT_EQ(2u, raw_mask_layer->did_become_active_call_count());
6815 EXPECT_EQ(1u, raw_replica_mask_layer->did_become_active_call_count());
6816 }
6817
6767 } // namespace 6818 } // namespace
6768 } // namespace cc 6819 } // namespace cc
OLDNEW
« no previous file with comments | « cc/test/fake_picture_layer_impl.cc ('k') | cc/trees/layer_tree_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698