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 <stddef.h> | 5 #include <stddef.h> |
6 #include <stdint.h> | 6 #include <stdint.h> |
7 | 7 |
8 #include "base/memory/ptr_util.h" | 8 #include "base/memory/ptr_util.h" |
9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
10 #include "base/threading/thread_task_runner_handle.h" | 10 #include "base/threading/thread_task_runner_handle.h" |
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
323 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); | 323 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); |
324 | 324 |
325 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, | 325 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, |
326 5.0, Occlusion(), true); | 326 5.0, Occlusion(), true); |
327 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, | 327 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, |
328 Occlusion(), true); | 328 Occlusion(), true); |
329 | 329 |
330 std::set<Tile*> all_expected_tiles; | 330 std::set<Tile*> all_expected_tiles; |
331 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { | 331 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { |
332 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); | 332 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); |
333 if (tiling->contents_scale_key() == 1.f) { | 333 if (tiling->contents_scale() == 1.f) { |
334 tiling->set_resolution(HIGH_RESOLUTION); | 334 tiling->set_resolution(HIGH_RESOLUTION); |
335 const auto& all_tiles = tiling->AllTilesForTesting(); | 335 const auto& all_tiles = tiling->AllTilesForTesting(); |
336 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 336 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
337 } else { | 337 } else { |
338 tiling->set_resolution(NON_IDEAL_RESOLUTION); | 338 tiling->set_resolution(NON_IDEAL_RESOLUTION); |
339 } | 339 } |
340 } | 340 } |
341 | 341 |
342 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { | 342 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { |
343 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); | 343 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); |
344 if (tiling->contents_scale_key() == 1.5f) { | 344 if (tiling->contents_scale() == 1.5f) { |
345 tiling->set_resolution(HIGH_RESOLUTION); | 345 tiling->set_resolution(HIGH_RESOLUTION); |
346 const auto& all_tiles = tiling->AllTilesForTesting(); | 346 const auto& all_tiles = tiling->AllTilesForTesting(); |
347 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 347 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
348 } else { | 348 } else { |
349 tiling->set_resolution(NON_IDEAL_RESOLUTION); | 349 tiling->set_resolution(NON_IDEAL_RESOLUTION); |
350 // Non ideal tilings with a high res pending twin have to be processed | 350 // Non ideal tilings with a high res pending twin have to be processed |
351 // because of possible activation tiles. | 351 // because of possible activation tiles. |
352 if (tiling->contents_scale_key() == 1.f) { | 352 if (tiling->contents_scale() == 1.f) { |
353 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); | 353 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); |
354 const auto& all_tiles = tiling->AllTilesForTesting(); | 354 const auto& all_tiles = tiling->AllTilesForTesting(); |
355 for (auto* tile : all_tiles) | 355 for (auto* tile : all_tiles) |
356 EXPECT_TRUE(tile->required_for_activation()); | 356 EXPECT_TRUE(tile->required_for_activation()); |
357 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 357 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
358 } | 358 } |
359 } | 359 } |
360 } | 360 } |
361 | 361 |
362 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( | 362 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( |
(...skipping 27 matching lines...) Expand all Loading... |
390 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); | 390 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); |
391 | 391 |
392 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, | 392 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, |
393 5.0, Occlusion(), true); | 393 5.0, Occlusion(), true); |
394 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, | 394 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, |
395 Occlusion(), true); | 395 Occlusion(), true); |
396 | 396 |
397 std::set<Tile*> all_expected_tiles; | 397 std::set<Tile*> all_expected_tiles; |
398 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { | 398 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { |
399 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); | 399 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); |
400 if (tiling->contents_scale_key() == 1.f) { | 400 if (tiling->contents_scale() == 1.f) { |
401 tiling->set_resolution(HIGH_RESOLUTION); | 401 tiling->set_resolution(HIGH_RESOLUTION); |
402 const auto& all_tiles = tiling->AllTilesForTesting(); | 402 const auto& all_tiles = tiling->AllTilesForTesting(); |
403 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 403 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
404 } else { | 404 } else { |
405 tiling->set_resolution(NON_IDEAL_RESOLUTION); | 405 tiling->set_resolution(NON_IDEAL_RESOLUTION); |
406 } | 406 } |
407 } | 407 } |
408 | 408 |
409 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { | 409 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { |
410 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); | 410 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); |
411 if (tiling->contents_scale_key() == 1.5f) { | 411 if (tiling->contents_scale() == 1.5f) { |
412 tiling->set_resolution(HIGH_RESOLUTION); | 412 tiling->set_resolution(HIGH_RESOLUTION); |
413 const auto& all_tiles = tiling->AllTilesForTesting(); | 413 const auto& all_tiles = tiling->AllTilesForTesting(); |
414 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 414 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
415 } else { | 415 } else { |
416 tiling->set_resolution(LOW_RESOLUTION); | 416 tiling->set_resolution(LOW_RESOLUTION); |
417 // Low res tilings with a high res pending twin have to be processed | 417 // Low res tilings with a high res pending twin have to be processed |
418 // because of possible activation tiles. | 418 // because of possible activation tiles. |
419 if (tiling->contents_scale_key() == 1.f) { | 419 if (tiling->contents_scale() == 1.f) { |
420 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); | 420 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); |
421 const auto& all_tiles = tiling->AllTilesForTesting(); | 421 const auto& all_tiles = tiling->AllTilesForTesting(); |
422 for (auto* tile : all_tiles) | 422 for (auto* tile : all_tiles) |
423 EXPECT_TRUE(tile->required_for_activation()); | 423 EXPECT_TRUE(tile->required_for_activation()); |
424 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); | 424 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); |
425 } | 425 } |
426 } | 426 } |
427 } | 427 } |
428 | 428 |
429 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( | 429 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( |
(...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
867 | 867 |
868 bool last_tile_is_occluded = last_tile.is_occluded(); | 868 bool last_tile_is_occluded = last_tile.is_occluded(); |
869 if (!last_tile_is_occluded) { | 869 if (!last_tile_is_occluded) { |
870 TilePriority::PriorityBin tile_priority_bin = | 870 TilePriority::PriorityBin tile_priority_bin = |
871 prioritized_tile.priority().priority_bin; | 871 prioritized_tile.priority().priority_bin; |
872 TilePriority::PriorityBin last_tile_priority_bin = | 872 TilePriority::PriorityBin last_tile_priority_bin = |
873 last_tile.priority().priority_bin; | 873 last_tile.priority().priority_bin; |
874 | 874 |
875 EXPECT_TRUE((tile_priority_bin < last_tile_priority_bin) || | 875 EXPECT_TRUE((tile_priority_bin < last_tile_priority_bin) || |
876 prioritized_tile.tile()->required_for_activation() || | 876 prioritized_tile.tile()->required_for_activation() || |
877 (prioritized_tile.tile()->contents_scale_key() != | 877 (prioritized_tile.tile()->contents_scale() != |
878 last_tile.tile()->contents_scale_key())); | 878 last_tile.tile()->contents_scale())); |
879 } | 879 } |
880 } | 880 } |
881 last_tile = prioritized_tile; | 881 last_tile = prioritized_tile; |
882 queue->Pop(); | 882 queue->Pop(); |
883 } | 883 } |
884 size_t expected_occluded_count = pending_child_high_res_tiles.size(); | 884 size_t expected_occluded_count = pending_child_high_res_tiles.size(); |
885 EXPECT_EQ(expected_occluded_count, occluded_count); | 885 EXPECT_EQ(expected_occluded_count, occluded_count); |
886 } | 886 } |
887 | 887 |
888 TEST_F(TileManagerTilePriorityQueueTest, | 888 TEST_F(TileManagerTilePriorityQueueTest, |
(...skipping 990 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1879 } | 1879 } |
1880 | 1880 |
1881 // Ensures that the tile manager does not attempt to reuse tiles when partial | 1881 // Ensures that the tile manager does not attempt to reuse tiles when partial |
1882 // raster is disabled. | 1882 // raster is disabled. |
1883 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) { | 1883 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) { |
1884 RunPartialRasterCheck(TakeHostImpl(), false /* partial_raster_enabled */); | 1884 RunPartialRasterCheck(TakeHostImpl(), false /* partial_raster_enabled */); |
1885 } | 1885 } |
1886 | 1886 |
1887 } // namespace | 1887 } // namespace |
1888 } // namespace cc | 1888 } // namespace cc |
OLD | NEW |