| OLD | NEW |
| 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/damage_tracker.h" | 5 #include "cc/trees/damage_tracker.h" |
| 6 | 6 |
| 7 #include "cc/base/math_util.h" | 7 #include "cc/base/math_util.h" |
| 8 #include "cc/layers/layer_impl.h" | 8 #include "cc/layers/layer_impl.h" |
| 9 #include "cc/output/filter_operation.h" | 9 #include "cc/output/filter_operation.h" |
| 10 #include "cc/output/filter_operations.h" | 10 #include "cc/output/filter_operations.h" |
| 11 #include "cc/test/fake_impl_proxy.h" | 11 #include "cc/test/fake_impl_proxy.h" |
| 12 #include "cc/test/fake_layer_tree_host_impl.h" | 12 #include "cc/test/fake_layer_tree_host_impl.h" |
| 13 #include "cc/test/geometry_test_utils.h" | 13 #include "cc/test/geometry_test_utils.h" |
| 14 #include "cc/test/test_shared_bitmap_manager.h" | 14 #include "cc/test/test_shared_bitmap_manager.h" |
| 15 #include "cc/test/test_task_graph_runner.h" |
| 15 #include "cc/trees/layer_tree_host_common.h" | 16 #include "cc/trees/layer_tree_host_common.h" |
| 16 #include "cc/trees/single_thread_proxy.h" | 17 #include "cc/trees/single_thread_proxy.h" |
| 17 #include "testing/gtest/include/gtest/gtest.h" | 18 #include "testing/gtest/include/gtest/gtest.h" |
| 18 #include "third_party/skia/include/effects/SkBlurImageFilter.h" | 19 #include "third_party/skia/include/effects/SkBlurImageFilter.h" |
| 19 #include "ui/gfx/geometry/quad_f.h" | 20 #include "ui/gfx/geometry/quad_f.h" |
| 20 #include "ui/gfx/geometry/rect_conversions.h" | 21 #include "ui/gfx/geometry/rect_conversions.h" |
| 21 | 22 |
| 22 namespace cc { | 23 namespace cc { |
| 23 namespace { | 24 namespace { |
| 24 | 25 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 67 target_surface->content_rect(), | 68 target_surface->content_rect(), |
| 68 render_surface_layer_list[i]->mask_layer(), | 69 render_surface_layer_list[i]->mask_layer(), |
| 69 render_surface_layer_list[i]->filters()); | 70 render_surface_layer_list[i]->filters()); |
| 70 } | 71 } |
| 71 | 72 |
| 72 root->ResetAllChangeTrackingForSubtree(); | 73 root->ResetAllChangeTrackingForSubtree(); |
| 73 } | 74 } |
| 74 | 75 |
| 75 class DamageTrackerTest : public testing::Test { | 76 class DamageTrackerTest : public testing::Test { |
| 76 public: | 77 public: |
| 77 DamageTrackerTest() : host_impl_(&proxy_, &shared_bitmap_manager_) {} | 78 DamageTrackerTest() |
| 79 : host_impl_(&proxy_, &shared_bitmap_manager_, &task_graph_runner_) {} |
| 78 | 80 |
| 79 scoped_ptr<LayerImpl> CreateTestTreeWithOneSurface() { | 81 scoped_ptr<LayerImpl> CreateTestTreeWithOneSurface() { |
| 80 scoped_ptr<LayerImpl> root = | 82 scoped_ptr<LayerImpl> root = |
| 81 LayerImpl::Create(host_impl_.active_tree(), 1); | 83 LayerImpl::Create(host_impl_.active_tree(), 1); |
| 82 scoped_ptr<LayerImpl> child = | 84 scoped_ptr<LayerImpl> child = |
| 83 LayerImpl::Create(host_impl_.active_tree(), 2); | 85 LayerImpl::Create(host_impl_.active_tree(), 2); |
| 84 | 86 |
| 85 root->SetPosition(gfx::PointF()); | 87 root->SetPosition(gfx::PointF()); |
| 86 root->SetBounds(gfx::Size(500, 500)); | 88 root->SetBounds(gfx::Size(500, 500)); |
| 87 root->SetContentBounds(gfx::Size(500, 500)); | 89 root->SetContentBounds(gfx::Size(500, 500)); |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 169 // Setup includes going past the first frame which always damages | 171 // Setup includes going past the first frame which always damages |
| 170 // everything, so that we can actually perform specific tests. | 172 // everything, so that we can actually perform specific tests. |
| 171 EmulateDrawingOneFrame(root.get()); | 173 EmulateDrawingOneFrame(root.get()); |
| 172 | 174 |
| 173 return root.Pass(); | 175 return root.Pass(); |
| 174 } | 176 } |
| 175 | 177 |
| 176 protected: | 178 protected: |
| 177 FakeImplProxy proxy_; | 179 FakeImplProxy proxy_; |
| 178 TestSharedBitmapManager shared_bitmap_manager_; | 180 TestSharedBitmapManager shared_bitmap_manager_; |
| 181 TestTaskGraphRunner task_graph_runner_; |
| 179 FakeLayerTreeHostImpl host_impl_; | 182 FakeLayerTreeHostImpl host_impl_; |
| 180 }; | 183 }; |
| 181 | 184 |
| 182 TEST_F(DamageTrackerTest, SanityCheckTestTreeWithOneSurface) { | 185 TEST_F(DamageTrackerTest, SanityCheckTestTreeWithOneSurface) { |
| 183 // Sanity check that the simple test tree will actually produce the expected | 186 // Sanity check that the simple test tree will actually produce the expected |
| 184 // render surfaces and layer lists. | 187 // render surfaces and layer lists. |
| 185 | 188 |
| 186 scoped_ptr<LayerImpl> root = CreateAndSetUpTestTreeWithOneSurface(); | 189 scoped_ptr<LayerImpl> root = CreateAndSetUpTestTreeWithOneSurface(); |
| 187 | 190 |
| 188 EXPECT_EQ(2u, root->render_surface()->layer_list().size()); | 191 EXPECT_EQ(2u, root->render_surface()->layer_list().size()); |
| (...skipping 1273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1462 gfx::Rect root_damage_rect = | 1465 gfx::Rect root_damage_rect = |
| 1463 root->render_surface()->damage_tracker()->current_damage_rect(); | 1466 root->render_surface()->damage_tracker()->current_damage_rect(); |
| 1464 gfx::Rect damage_we_care_about = gfx::Rect(i, i); | 1467 gfx::Rect damage_we_care_about = gfx::Rect(i, i); |
| 1465 EXPECT_LE(damage_we_care_about.right(), root_damage_rect.right()); | 1468 EXPECT_LE(damage_we_care_about.right(), root_damage_rect.right()); |
| 1466 EXPECT_LE(damage_we_care_about.bottom(), root_damage_rect.bottom()); | 1469 EXPECT_LE(damage_we_care_about.bottom(), root_damage_rect.bottom()); |
| 1467 } | 1470 } |
| 1468 } | 1471 } |
| 1469 | 1472 |
| 1470 } // namespace | 1473 } // namespace |
| 1471 } // namespace cc | 1474 } // namespace cc |
| OLD | NEW |