OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/resources/eviction_tile_priority_queue.h" | 5 #include "cc/resources/eviction_tile_priority_queue.h" |
6 #include "cc/resources/raster_tile_priority_queue.h" | 6 #include "cc/resources/raster_tile_priority_queue.h" |
7 #include "cc/resources/tile.h" | 7 #include "cc/resources/tile.h" |
8 #include "cc/resources/tile_priority.h" | 8 #include "cc/resources/tile_priority.h" |
9 #include "cc/resources/tiling_set_raster_queue_all.h" | 9 #include "cc/resources/tiling_set_raster_queue_all.h" |
10 #include "cc/test/begin_frame_args_test.h" | 10 #include "cc/test/begin_frame_args_test.h" |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 pending_layer->SetHasRenderSurface(true); | 120 pending_layer->SetHasRenderSurface(true); |
121 } | 121 } |
122 // The bounds() just mirror the pile size. | 122 // The bounds() just mirror the pile size. |
123 pending_layer->SetBounds(pending_layer->raster_source()->GetSize()); | 123 pending_layer->SetBounds(pending_layer->raster_source()->GetSize()); |
124 pending_tree->SetRootLayer(pending_layer.Pass()); | 124 pending_tree->SetRootLayer(pending_layer.Pass()); |
125 | 125 |
126 pending_layer_ = static_cast<FakePictureLayerImpl*>( | 126 pending_layer_ = static_cast<FakePictureLayerImpl*>( |
127 host_impl_.pending_tree()->LayerById(id_)); | 127 host_impl_.pending_tree()->LayerById(id_)); |
128 | 128 |
129 // Add tilings/tiles for the layer. | 129 // Add tilings/tiles for the layer. |
130 host_impl_.pending_tree()->UpdateDrawProperties(); | 130 bool update_lcd_text = false; |
| 131 host_impl_.pending_tree()->UpdateDrawProperties(update_lcd_text); |
131 } | 132 } |
132 | 133 |
133 TileManager* tile_manager() { return host_impl_.tile_manager(); } | 134 TileManager* tile_manager() { return host_impl_.tile_manager(); } |
134 | 135 |
135 protected: | 136 protected: |
136 GlobalStateThatImpactsTilePriority global_state_; | 137 GlobalStateThatImpactsTilePriority global_state_; |
137 | 138 |
138 TestSharedBitmapManager shared_bitmap_manager_; | 139 TestSharedBitmapManager shared_bitmap_manager_; |
139 TileMemoryLimitPolicy memory_limit_policy_; | 140 TileMemoryLimitPolicy memory_limit_policy_; |
140 int max_tiles_; | 141 int max_tiles_; |
(...skipping 393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
534 id_ + 1, pending_pile); | 535 id_ + 1, pending_pile); |
535 FakePictureLayerImpl* pending_child_raw = pending_child.get(); | 536 FakePictureLayerImpl* pending_child_raw = pending_child.get(); |
536 pending_child_raw->SetDrawsContent(true); | 537 pending_child_raw->SetDrawsContent(true); |
537 pending_layer_->AddChild(pending_child.Pass()); | 538 pending_layer_->AddChild(pending_child.Pass()); |
538 | 539 |
539 // Set a small viewport, so we have soon and eventually tiles. | 540 // Set a small viewport, so we have soon and eventually tiles. |
540 host_impl_.SetViewportSize(gfx::Size(200, 200)); | 541 host_impl_.SetViewportSize(gfx::Size(200, 200)); |
541 time_ticks += base::TimeDelta::FromMilliseconds(1); | 542 time_ticks += base::TimeDelta::FromMilliseconds(1); |
542 host_impl_.SetCurrentBeginFrameArgs( | 543 host_impl_.SetCurrentBeginFrameArgs( |
543 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); | 544 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
544 host_impl_.pending_tree()->UpdateDrawProperties(); | 545 bool update_lcd_text = false; |
| 546 host_impl_.pending_tree()->UpdateDrawProperties(update_lcd_text); |
545 | 547 |
546 host_impl_.SetRequiresHighResToDraw(); | 548 host_impl_.SetRequiresHighResToDraw(); |
547 scoped_ptr<RasterTilePriorityQueue> queue(host_impl_.BuildRasterQueue( | 549 scoped_ptr<RasterTilePriorityQueue> queue(host_impl_.BuildRasterQueue( |
548 SMOOTHNESS_TAKES_PRIORITY, RasterTilePriorityQueue::Type::ALL)); | 550 SMOOTHNESS_TAKES_PRIORITY, RasterTilePriorityQueue::Type::ALL)); |
549 EXPECT_FALSE(queue->IsEmpty()); | 551 EXPECT_FALSE(queue->IsEmpty()); |
550 | 552 |
551 // Get all the tiles that are NOW or SOON and make sure they are ready to | 553 // Get all the tiles that are NOW or SOON and make sure they are ready to |
552 // draw. | 554 // draw. |
553 std::vector<Tile*> all_tiles; | 555 std::vector<Tile*> all_tiles; |
554 while (!queue->IsEmpty()) { | 556 while (!queue->IsEmpty()) { |
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
764 pending_pile); | 766 pending_pile); |
765 pending_layer_->AddChild(pending_child.Pass()); | 767 pending_layer_->AddChild(pending_child.Pass()); |
766 | 768 |
767 FakePictureLayerImpl* pending_child_layer = | 769 FakePictureLayerImpl* pending_child_layer = |
768 static_cast<FakePictureLayerImpl*>(pending_layer_->children()[0]); | 770 static_cast<FakePictureLayerImpl*>(pending_layer_->children()[0]); |
769 pending_child_layer->SetDrawsContent(true); | 771 pending_child_layer->SetDrawsContent(true); |
770 | 772 |
771 time_ticks += base::TimeDelta::FromMilliseconds(1); | 773 time_ticks += base::TimeDelta::FromMilliseconds(1); |
772 host_impl_.SetCurrentBeginFrameArgs( | 774 host_impl_.SetCurrentBeginFrameArgs( |
773 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); | 775 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
774 host_impl_.pending_tree()->UpdateDrawProperties(); | 776 bool update_lcd_text = false; |
| 777 host_impl_.pending_tree()->UpdateDrawProperties(update_lcd_text); |
775 | 778 |
776 ActivateTree(); | 779 ActivateTree(); |
777 SetupPendingTree(pending_pile); | 780 SetupPendingTree(pending_pile); |
778 | 781 |
779 FakePictureLayerImpl* active_child_layer = | 782 FakePictureLayerImpl* active_child_layer = |
780 static_cast<FakePictureLayerImpl*>(active_layer_->children()[0]); | 783 static_cast<FakePictureLayerImpl*>(active_layer_->children()[0]); |
781 | 784 |
782 std::set<Tile*> all_tiles; | 785 std::set<Tile*> all_tiles; |
783 size_t tile_count = 0; | 786 size_t tile_count = 0; |
784 scoped_ptr<RasterTilePriorityQueue> raster_queue(host_impl_.BuildRasterQueue( | 787 scoped_ptr<RasterTilePriorityQueue> raster_queue(host_impl_.BuildRasterQueue( |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
902 FakePictureLayerImpl* pending_child_layer = pending_child.get(); | 905 FakePictureLayerImpl* pending_child_layer = pending_child.get(); |
903 pending_layer_->AddChild(pending_child.Pass()); | 906 pending_layer_->AddChild(pending_child.Pass()); |
904 | 907 |
905 // Create a fully transparent child layer so that its tile priorities are not | 908 // Create a fully transparent child layer so that its tile priorities are not |
906 // considered to be valid. | 909 // considered to be valid. |
907 pending_child_layer->SetDrawsContent(true); | 910 pending_child_layer->SetDrawsContent(true); |
908 | 911 |
909 time_ticks += base::TimeDelta::FromMilliseconds(1); | 912 time_ticks += base::TimeDelta::FromMilliseconds(1); |
910 host_impl_.SetCurrentBeginFrameArgs( | 913 host_impl_.SetCurrentBeginFrameArgs( |
911 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); | 914 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
912 host_impl_.pending_tree()->UpdateDrawProperties(); | 915 bool update_lcd_text = false; |
| 916 host_impl_.pending_tree()->UpdateDrawProperties(update_lcd_text); |
913 | 917 |
914 pending_child_layer->SetOpacity(0.0); | 918 pending_child_layer->SetOpacity(0.0); |
915 | 919 |
916 time_ticks += base::TimeDelta::FromMilliseconds(1); | 920 time_ticks += base::TimeDelta::FromMilliseconds(1); |
917 host_impl_.SetCurrentBeginFrameArgs( | 921 host_impl_.SetCurrentBeginFrameArgs( |
918 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); | 922 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
919 host_impl_.pending_tree()->UpdateDrawProperties(); | 923 host_impl_.pending_tree()->UpdateDrawProperties(update_lcd_text); |
920 | 924 |
921 // Renew all of the tile priorities. | 925 // Renew all of the tile priorities. |
922 gfx::Rect viewport(layer_bounds); | 926 gfx::Rect viewport(layer_bounds); |
923 pending_layer_->HighResTiling()->ComputeTilePriorityRects(viewport, 1.0f, 1.0, | 927 pending_layer_->HighResTiling()->ComputeTilePriorityRects(viewport, 1.0f, 1.0, |
924 Occlusion()); | 928 Occlusion()); |
925 pending_layer_->LowResTiling()->ComputeTilePriorityRects(viewport, 1.0f, 1.0, | 929 pending_layer_->LowResTiling()->ComputeTilePriorityRects(viewport, 1.0f, 1.0, |
926 Occlusion()); | 930 Occlusion()); |
927 pending_child_layer->HighResTiling()->ComputeTilePriorityRects( | 931 pending_child_layer->HighResTiling()->ComputeTilePriorityRects( |
928 viewport, 1.0f, 1.0, Occlusion()); | 932 viewport, 1.0f, 1.0, Occlusion()); |
929 pending_child_layer->LowResTiling()->ComputeTilePriorityRects( | 933 pending_child_layer->LowResTiling()->ComputeTilePriorityRects( |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1268 EXPECT_GT(eventually_bin_order_correct_count, | 1272 EXPECT_GT(eventually_bin_order_correct_count, |
1269 eventually_bin_order_incorrect_count); | 1273 eventually_bin_order_incorrect_count); |
1270 | 1274 |
1271 EXPECT_TRUE(have_tiles[TilePriority::NOW]); | 1275 EXPECT_TRUE(have_tiles[TilePriority::NOW]); |
1272 EXPECT_TRUE(have_tiles[TilePriority::SOON]); | 1276 EXPECT_TRUE(have_tiles[TilePriority::SOON]); |
1273 EXPECT_TRUE(have_tiles[TilePriority::EVENTUALLY]); | 1277 EXPECT_TRUE(have_tiles[TilePriority::EVENTUALLY]); |
1274 } | 1278 } |
1275 | 1279 |
1276 } // namespace | 1280 } // namespace |
1277 } // namespace cc | 1281 } // namespace cc |
OLD | NEW |