| Index: cc/trees/occlusion_tracker_unittest.cc
|
| diff --git a/cc/trees/occlusion_tracker_unittest.cc b/cc/trees/occlusion_tracker_unittest.cc
|
| index 7412de20078f5a1aaeee92633091f579cf473e92..433100e9ffddc657816a095944a4f80828da57f8 100644
|
| --- a/cc/trees/occlusion_tracker_unittest.cc
|
| +++ b/cc/trees/occlusion_tracker_unittest.cc
|
| @@ -190,7 +190,7 @@ class OcclusionTrackerTest : public testing::Test {
|
| host_->host_impl()->active_tree()->SetRootLayerForTesting(nullptr);
|
| render_surface_layer_list_impl_.clear();
|
| mask_layers_.clear();
|
| - ResetLayerIterator();
|
| + layer_iterator_.reset();
|
| }
|
|
|
| void CopyOutputCallback(std::unique_ptr<CopyOutputResult> result) {}
|
| @@ -223,21 +223,23 @@ class OcclusionTrackerTest : public testing::Test {
|
| inputs.can_adjust_raster_scales = true;
|
| LayerTreeHostCommon::CalculateDrawPropertiesForTesting(&inputs);
|
|
|
| - layer_iterator_ = layer_iterator_begin_ =
|
| - LayerIterator::Begin(&render_surface_layer_list_impl_);
|
| + layer_iterator_ = base::MakeUnique<EffectTreeLayerListIterator>(
|
| + host_->host_impl()->active_tree());
|
| }
|
|
|
| void EnterLayer(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| - ASSERT_EQ(*layer_iterator_, layer);
|
| - ASSERT_TRUE(layer_iterator_.represents_itself());
|
| - occlusion->EnterLayer(layer_iterator_);
|
| + ASSERT_EQ(layer_iterator_->current_layer(), layer);
|
| + ASSERT_TRUE(layer_iterator_->state() ==
|
| + EffectTreeLayerListIterator::State::LAYER);
|
| + occlusion->EnterLayer(*layer_iterator_);
|
| }
|
|
|
| void LeaveLayer(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| - ASSERT_EQ(*layer_iterator_, layer);
|
| - ASSERT_TRUE(layer_iterator_.represents_itself());
|
| - occlusion->LeaveLayer(layer_iterator_);
|
| - ++layer_iterator_;
|
| + ASSERT_EQ(layer_iterator_->current_layer(), layer);
|
| + ASSERT_TRUE(layer_iterator_->state() ==
|
| + EffectTreeLayerListIterator::State::LAYER);
|
| + occlusion->LeaveLayer(*layer_iterator_);
|
| + ++(*layer_iterator_);
|
| }
|
|
|
| void VisitLayer(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| @@ -246,20 +248,25 @@ class OcclusionTrackerTest : public testing::Test {
|
| }
|
|
|
| void EnterContributingSurface(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| - ASSERT_EQ(*layer_iterator_, layer);
|
| - ASSERT_TRUE(layer_iterator_.represents_target_render_surface());
|
| - occlusion->EnterLayer(layer_iterator_);
|
| - occlusion->LeaveLayer(layer_iterator_);
|
| - ++layer_iterator_;
|
| - ASSERT_TRUE(layer_iterator_.represents_contributing_render_surface());
|
| - occlusion->EnterLayer(layer_iterator_);
|
| + ASSERT_EQ(layer_iterator_->target_render_surface(),
|
| + layer->GetRenderSurface());
|
| + ASSERT_TRUE(layer_iterator_->state() ==
|
| + EffectTreeLayerListIterator::State::TARGET_SURFACE);
|
| + occlusion->EnterLayer(*layer_iterator_);
|
| + occlusion->LeaveLayer(*layer_iterator_);
|
| + ++(*layer_iterator_);
|
| + ASSERT_TRUE(layer_iterator_->state() ==
|
| + EffectTreeLayerListIterator::State::CONTRIBUTING_SURFACE);
|
| + occlusion->EnterLayer(*layer_iterator_);
|
| }
|
|
|
| void LeaveContributingSurface(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| - ASSERT_EQ(*layer_iterator_, layer);
|
| - ASSERT_TRUE(layer_iterator_.represents_contributing_render_surface());
|
| - occlusion->LeaveLayer(layer_iterator_);
|
| - ++layer_iterator_;
|
| + ASSERT_EQ(layer_iterator_->current_render_surface(),
|
| + layer->GetRenderSurface());
|
| + ASSERT_TRUE(layer_iterator_->state() ==
|
| + EffectTreeLayerListIterator::State::CONTRIBUTING_SURFACE);
|
| + occlusion->LeaveLayer(*layer_iterator_);
|
| + ++(*layer_iterator_);
|
| }
|
|
|
| void VisitContributingSurface(LayerImpl* layer, OcclusionTracker* occlusion) {
|
| @@ -267,7 +274,10 @@ class OcclusionTrackerTest : public testing::Test {
|
| LeaveContributingSurface(layer, occlusion);
|
| }
|
|
|
| - void ResetLayerIterator() { layer_iterator_ = layer_iterator_begin_; }
|
| + void ResetLayerIterator() {
|
| + *layer_iterator_ =
|
| + EffectTreeLayerListIterator(host_->host_impl()->active_tree());
|
| + }
|
|
|
| const gfx::Transform identity_matrix;
|
|
|
| @@ -298,8 +308,7 @@ class OcclusionTrackerTest : public testing::Test {
|
| std::unique_ptr<FakeLayerTreeHost> host_;
|
| // These hold ownership of the layers for the duration of the test.
|
| LayerImplList render_surface_layer_list_impl_;
|
| - LayerIterator layer_iterator_begin_;
|
| - LayerIterator layer_iterator_;
|
| + std::unique_ptr<EffectTreeLayerListIterator> layer_iterator_;
|
| LayerList mask_layers_;
|
| int next_layer_impl_id_;
|
| };
|
|
|