| Index: cc/layers/picture_layer_impl_unittest.cc
|
| diff --git a/cc/layers/picture_layer_impl_unittest.cc b/cc/layers/picture_layer_impl_unittest.cc
|
| index 9e80f926ee50e7a91c599718631105bed5175d8d..7188faf41290fc4792ed919e516b207dfd882f15 100644
|
| --- a/cc/layers/picture_layer_impl_unittest.cc
|
| +++ b/cc/layers/picture_layer_impl_unittest.cc
|
| @@ -415,7 +415,8 @@ TEST_F(PictureLayerImplTest, ExternalViewportRectForPrioritizingTiles) {
|
| }
|
| }
|
|
|
| -TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| +TEST_F(PictureLayerImplTest,
|
| + ResourcelessSoftwareDrawHasValidViewportForTilePriority) {
|
| base::TimeTicks time_ticks;
|
| time_ticks += base::TimeDelta::FromMilliseconds(1);
|
| host_impl_.SetCurrentBeginFrameArgs(
|
| @@ -436,8 +437,6 @@ TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, false);
|
|
|
| // UpdateTiles with valid viewport. Should update tile viewport.
|
| - // Note viewport is considered invalid if and only if in resourceless
|
| - // software draw.
|
| bool resourceless_software_draw = false;
|
| gfx::Rect viewport = gfx::Rect(layer_bounds);
|
| gfx::Transform transform;
|
| @@ -460,8 +459,9 @@ TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| gfx::Transform screen_space_transform_for_tile_priority =
|
| active_layer_->screen_space_transform_for_tile_priority();
|
|
|
| - // Expand viewport and set it as invalid for prioritizing tiles.
|
| - // Should not update tile viewport.
|
| + // PictureLayerImpl does not make a special case for
|
| + // resource_less_software_draw, so the tile viewport and matrix should be
|
| + // respeced.
|
| time_ticks += base::TimeDelta::FromMilliseconds(200);
|
| host_impl_.SetCurrentBeginFrameArgs(
|
| CreateBeginFrameArgsForTesting(time_ticks));
|
| @@ -478,6 +478,11 @@ TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| resourceless_software_draw);
|
| active_layer_->UpdateTiles(NULL);
|
|
|
| + visible_rect_for_tile_priority =
|
| + gfx::ScaleToEnclosingRect(visible_rect_for_tile_priority, 2);
|
| + viewport_rect_for_tile_priority =
|
| + gfx::ScaleToEnclosingRect(viewport_rect_for_tile_priority, 2);
|
| + screen_space_transform_for_tile_priority = transform;
|
| EXPECT_RECT_EQ(visible_rect_for_tile_priority,
|
| active_layer_->visible_rect_for_tile_priority());
|
| EXPECT_RECT_EQ(viewport_rect_for_tile_priority,
|
| @@ -485,26 +490,6 @@ TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| EXPECT_TRANSFORMATION_MATRIX_EQ(
|
| screen_space_transform_for_tile_priority,
|
| active_layer_->screen_space_transform_for_tile_priority());
|
| -
|
| - // Keep expanded viewport but mark it valid. Should update tile viewport.
|
| - time_ticks += base::TimeDelta::FromMilliseconds(200);
|
| - host_impl_.SetCurrentBeginFrameArgs(
|
| - CreateBeginFrameArgsForTesting(time_ticks));
|
| - resourceless_software_draw = false;
|
| - host_impl_.SetExternalDrawConstraints(transform,
|
| - viewport,
|
| - viewport,
|
| - viewport,
|
| - transform,
|
| - resourceless_software_draw);
|
| - active_layer_->UpdateTiles(NULL);
|
| -
|
| - EXPECT_FALSE(visible_rect_for_tile_priority ==
|
| - active_layer_->visible_rect_for_tile_priority());
|
| - EXPECT_FALSE(viewport_rect_for_tile_priority ==
|
| - active_layer_->viewport_rect_for_tile_priority());
|
| - EXPECT_FALSE(screen_space_transform_for_tile_priority ==
|
| - active_layer_->screen_space_transform_for_tile_priority());
|
| }
|
|
|
| TEST_F(PictureLayerImplTest, InvalidViewportAfterReleaseResources) {
|
| @@ -3043,7 +3028,8 @@ TEST_F(NoLowResPictureLayerImplTest, NothingRequiredIfActiveMissingTiles) {
|
| AssertNoTilesRequired(pending_layer_->LowResTiling());
|
| }
|
|
|
| -TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| +TEST_F(NoLowResPictureLayerImplTest,
|
| + ResourcelessSoftwareDrawHasValidViewportForTilePriority) {
|
| base::TimeTicks time_ticks;
|
| time_ticks += base::TimeDelta::FromMilliseconds(1);
|
| host_impl_.SetCurrentBeginFrameArgs(
|
| @@ -3064,8 +3050,6 @@ TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, false);
|
|
|
| // UpdateTiles with valid viewport. Should update tile viewport.
|
| - // Note viewport is considered invalid if and only if in resourceless
|
| - // software draw.
|
| bool resourceless_software_draw = false;
|
| gfx::Rect viewport = gfx::Rect(layer_bounds);
|
| gfx::Transform transform;
|
| @@ -3088,8 +3072,9 @@ TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| gfx::Transform screen_space_transform_for_tile_priority =
|
| active_layer_->screen_space_transform_for_tile_priority();
|
|
|
| - // Expand viewport and set it as invalid for prioritizing tiles.
|
| - // Should not update tile viewport.
|
| + // PictureLayerImpl does not make a special case for
|
| + // resource_less_software_draw, so the tile viewport and matrix should be
|
| + // respeced.
|
| time_ticks += base::TimeDelta::FromMilliseconds(200);
|
| host_impl_.SetCurrentBeginFrameArgs(
|
| CreateBeginFrameArgsForTesting(time_ticks));
|
| @@ -3106,6 +3091,12 @@ TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| resourceless_software_draw);
|
| active_layer_->UpdateTiles(NULL);
|
|
|
| + visible_rect_for_tile_priority =
|
| + gfx::ScaleToEnclosingRect(visible_rect_for_tile_priority, 2);
|
| + viewport_rect_for_tile_priority =
|
| + gfx::ScaleToEnclosingRect(viewport_rect_for_tile_priority, 2);
|
| + screen_space_transform_for_tile_priority = transform;
|
| +
|
| EXPECT_RECT_EQ(visible_rect_for_tile_priority,
|
| active_layer_->visible_rect_for_tile_priority());
|
| EXPECT_RECT_EQ(viewport_rect_for_tile_priority,
|
| @@ -3113,26 +3104,6 @@ TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
|
| EXPECT_TRANSFORMATION_MATRIX_EQ(
|
| screen_space_transform_for_tile_priority,
|
| active_layer_->screen_space_transform_for_tile_priority());
|
| -
|
| - // Keep expanded viewport but mark it valid. Should update tile viewport.
|
| - time_ticks += base::TimeDelta::FromMilliseconds(200);
|
| - host_impl_.SetCurrentBeginFrameArgs(
|
| - CreateBeginFrameArgsForTesting(time_ticks));
|
| - resourceless_software_draw = false;
|
| - host_impl_.SetExternalDrawConstraints(transform,
|
| - viewport,
|
| - viewport,
|
| - viewport,
|
| - transform,
|
| - resourceless_software_draw);
|
| - active_layer_->UpdateTiles(NULL);
|
| -
|
| - EXPECT_FALSE(visible_rect_for_tile_priority ==
|
| - active_layer_->visible_rect_for_tile_priority());
|
| - EXPECT_FALSE(viewport_rect_for_tile_priority ==
|
| - active_layer_->viewport_rect_for_tile_priority());
|
| - EXPECT_FALSE(screen_space_transform_for_tile_priority ==
|
| - active_layer_->screen_space_transform_for_tile_priority());
|
| }
|
|
|
| TEST_F(NoLowResPictureLayerImplTest, InvalidViewportAfterReleaseResources) {
|
|
|