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/layers/picture_layer_impl.h" | 5 #include "cc/layers/picture_layer_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <limits> | 8 #include <limits> |
9 #include <set> | 9 #include <set> |
10 #include <utility> | 10 #include <utility> |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 layer->draw_properties().maximum_animation_contents_scale = | 152 layer->draw_properties().maximum_animation_contents_scale = |
153 maximum_animation_contents_scale; | 153 maximum_animation_contents_scale; |
154 layer->draw_properties().screen_space_transform_is_animating = | 154 layer->draw_properties().screen_space_transform_is_animating = |
155 animating_transform_to_screen; | 155 animating_transform_to_screen; |
156 layer->UpdateTiles(NULL); | 156 layer->UpdateTiles(NULL); |
157 } | 157 } |
158 static void VerifyAllTilesExistAndHavePile( | 158 static void VerifyAllTilesExistAndHavePile( |
159 const PictureLayerTiling* tiling, | 159 const PictureLayerTiling* tiling, |
160 PicturePileImpl* pile) { | 160 PicturePileImpl* pile) { |
161 for (PictureLayerTiling::CoverageIterator iter( | 161 for (PictureLayerTiling::CoverageIterator iter( |
162 tiling, tiling->contents_scale(), tiling->TilingRect()); | 162 tiling, |
| 163 tiling->contents_scale(), |
| 164 gfx::Rect(tiling->tiling_size())); |
163 iter; | 165 iter; |
164 ++iter) { | 166 ++iter) { |
165 EXPECT_TRUE(*iter); | 167 EXPECT_TRUE(*iter); |
166 EXPECT_EQ(pile, iter->picture_pile()); | 168 EXPECT_EQ(pile, iter->picture_pile()); |
167 } | 169 } |
168 } | 170 } |
169 | 171 |
170 void SetContentsScaleOnBothLayers(float contents_scale, | 172 void SetContentsScaleOnBothLayers(float contents_scale, |
171 float device_scale_factor, | 173 float device_scale_factor, |
172 float page_scale_factor, | 174 float page_scale_factor, |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
424 AddDefaultTilingsWithInvalidation(invalidation); | 426 AddDefaultTilingsWithInvalidation(invalidation); |
425 | 427 |
426 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); | 428 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); |
427 EXPECT_GT(tilings->num_tilings(), 0u); | 429 EXPECT_GT(tilings->num_tilings(), 0u); |
428 for (size_t i = 0; i < tilings->num_tilings(); ++i) { | 430 for (size_t i = 0; i < tilings->num_tilings(); ++i) { |
429 const PictureLayerTiling* tiling = tilings->tiling_at(i); | 431 const PictureLayerTiling* tiling = tilings->tiling_at(i); |
430 gfx::Rect content_invalidation = gfx::ScaleToEnclosingRect( | 432 gfx::Rect content_invalidation = gfx::ScaleToEnclosingRect( |
431 layer_invalidation, | 433 layer_invalidation, |
432 tiling->contents_scale()); | 434 tiling->contents_scale()); |
433 for (PictureLayerTiling::CoverageIterator iter( | 435 for (PictureLayerTiling::CoverageIterator iter( |
434 tiling, tiling->contents_scale(), tiling->TilingRect()); | 436 tiling, |
| 437 tiling->contents_scale(), |
| 438 gfx::Rect(tiling->tiling_size())); |
435 iter; | 439 iter; |
436 ++iter) { | 440 ++iter) { |
437 EXPECT_TRUE(*iter); | 441 EXPECT_TRUE(*iter); |
438 EXPECT_FALSE(iter.geometry_rect().IsEmpty()); | 442 EXPECT_FALSE(iter.geometry_rect().IsEmpty()); |
439 if (iter.geometry_rect().Intersects(content_invalidation)) | 443 if (iter.geometry_rect().Intersects(content_invalidation)) |
440 EXPECT_EQ(pending_pile, iter->picture_pile()); | 444 EXPECT_EQ(pending_pile, iter->picture_pile()); |
441 else | 445 else |
442 EXPECT_EQ(active_pile, iter->picture_pile()); | 446 EXPECT_EQ(active_pile, iter->picture_pile()); |
443 } | 447 } |
444 } | 448 } |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
485 AddDefaultTilingsWithInvalidation(invalidation); | 489 AddDefaultTilingsWithInvalidation(invalidation); |
486 | 490 |
487 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); | 491 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); |
488 EXPECT_GT(tilings->num_tilings(), 0u); | 492 EXPECT_GT(tilings->num_tilings(), 0u); |
489 for (size_t i = 0; i < tilings->num_tilings(); ++i) { | 493 for (size_t i = 0; i < tilings->num_tilings(); ++i) { |
490 const PictureLayerTiling* tiling = tilings->tiling_at(i); | 494 const PictureLayerTiling* tiling = tilings->tiling_at(i); |
491 gfx::Rect active_content_bounds = gfx::ScaleToEnclosingRect( | 495 gfx::Rect active_content_bounds = gfx::ScaleToEnclosingRect( |
492 gfx::Rect(active_layer_bounds), | 496 gfx::Rect(active_layer_bounds), |
493 tiling->contents_scale()); | 497 tiling->contents_scale()); |
494 for (PictureLayerTiling::CoverageIterator iter( | 498 for (PictureLayerTiling::CoverageIterator iter( |
495 tiling, tiling->contents_scale(), tiling->TilingRect()); | 499 tiling, |
| 500 tiling->contents_scale(), |
| 501 gfx::Rect(tiling->tiling_size())); |
496 iter; | 502 iter; |
497 ++iter) { | 503 ++iter) { |
498 EXPECT_TRUE(*iter); | 504 EXPECT_TRUE(*iter); |
499 EXPECT_FALSE(iter.geometry_rect().IsEmpty()); | 505 EXPECT_FALSE(iter.geometry_rect().IsEmpty()); |
500 std::vector<Tile*> active_tiles = | 506 std::vector<Tile*> active_tiles = |
501 active_layer_->tilings()->tiling_at(i)->AllTilesForTesting(); | 507 active_layer_->tilings()->tiling_at(i)->AllTilesForTesting(); |
502 std::vector<Tile*> pending_tiles = tiling->AllTilesForTesting(); | 508 std::vector<Tile*> pending_tiles = tiling->AllTilesForTesting(); |
503 if (iter.geometry_rect().right() >= active_content_bounds.width() || | 509 if (iter.geometry_rect().right() >= active_content_bounds.width() || |
504 iter.geometry_rect().bottom() >= active_content_bounds.height() || | 510 iter.geometry_rect().bottom() >= active_content_bounds.height() || |
505 active_tiles[0]->content_rect().size() != | 511 active_tiles[0]->content_rect().size() != |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
539 SetupTrees(pending_pile, active_pile); | 545 SetupTrees(pending_pile, active_pile); |
540 Region invalidation; | 546 Region invalidation; |
541 AddDefaultTilingsWithInvalidation(invalidation); | 547 AddDefaultTilingsWithInvalidation(invalidation); |
542 | 548 |
543 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); | 549 const PictureLayerTilingSet* tilings = pending_layer_->tilings(); |
544 EXPECT_GT(tilings->num_tilings(), 0u); | 550 EXPECT_GT(tilings->num_tilings(), 0u); |
545 for (size_t i = 0; i < tilings->num_tilings(); ++i) { | 551 for (size_t i = 0; i < tilings->num_tilings(); ++i) { |
546 const PictureLayerTiling* tiling = tilings->tiling_at(i); | 552 const PictureLayerTiling* tiling = tilings->tiling_at(i); |
547 | 553 |
548 for (PictureLayerTiling::CoverageIterator iter( | 554 for (PictureLayerTiling::CoverageIterator iter( |
549 tiling, tiling->contents_scale(), tiling->TilingRect()); | 555 tiling, |
| 556 tiling->contents_scale(), |
| 557 gfx::Rect(tiling->tiling_size())); |
550 iter; | 558 iter; |
551 ++iter) { | 559 ++iter) { |
552 EXPECT_FALSE(iter.full_tile_geometry_rect().IsEmpty()); | 560 EXPECT_FALSE(iter.full_tile_geometry_rect().IsEmpty()); |
553 // Ensure there is a recording for this tile. | 561 // Ensure there is a recording for this tile. |
554 bool in_pending = pending_pile->CanRaster(tiling->contents_scale(), | 562 bool in_pending = pending_pile->CanRaster(tiling->contents_scale(), |
555 iter.full_tile_geometry_rect()); | 563 iter.full_tile_geometry_rect()); |
556 bool in_active = active_pile->CanRaster(tiling->contents_scale(), | 564 bool in_active = active_pile->CanRaster(tiling->contents_scale(), |
557 iter.full_tile_geometry_rect()); | 565 iter.full_tile_geometry_rect()); |
558 | 566 |
559 if (in_pending && !in_active) | 567 if (in_pending && !in_active) |
(...skipping 2731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3291 // Unshared tiles are occluded on the active tree iff they lie beneath | 3299 // Unshared tiles are occluded on the active tree iff they lie beneath |
3292 // the occluding layer. | 3300 // the occluding layer. |
3293 EXPECT_EQ(tile->is_occluded(ACTIVE_TREE), | 3301 EXPECT_EQ(tile->is_occluded(ACTIVE_TREE), |
3294 scaled_content_rect.x() >= occluding_layer_position.x()); | 3302 scaled_content_rect.x() >= occluding_layer_position.x()); |
3295 } | 3303 } |
3296 } | 3304 } |
3297 } | 3305 } |
3298 } | 3306 } |
3299 } // namespace | 3307 } // namespace |
3300 } // namespace cc | 3308 } // namespace cc |
OLD | NEW |