| 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 <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <limits> | 10 #include <limits> |
| (...skipping 1432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1443 pending_layer()->tilings()->tiling_at(0)->AllTilesForTesting()[0]; | 1443 pending_layer()->tilings()->tiling_at(0)->AllTilesForTesting()[0]; |
| 1444 EXPECT_EQ(gfx::Size(256, 256).ToString(), | 1444 EXPECT_EQ(gfx::Size(256, 256).ToString(), |
| 1445 tile->content_rect().size().ToString()); | 1445 tile->content_rect().size().ToString()); |
| 1446 | 1446 |
| 1447 ResetTilingsAndRasterScales(); | 1447 ResetTilingsAndRasterScales(); |
| 1448 | 1448 |
| 1449 // Change the max texture size on the output surface context. | 1449 // Change the max texture size on the output surface context. |
| 1450 std::unique_ptr<TestWebGraphicsContext3D> context = | 1450 std::unique_ptr<TestWebGraphicsContext3D> context = |
| 1451 TestWebGraphicsContext3D::Create(); | 1451 TestWebGraphicsContext3D::Create(); |
| 1452 context->set_max_texture_size(140); | 1452 context->set_max_texture_size(140); |
| 1453 ResetOutputSurface(FakeOutputSurface::Create3d(std::move(context))); | 1453 ResetOutputSurface(FakeOutputSurface::CreateDelegating3d(std::move(context))); |
| 1454 | 1454 |
| 1455 SetupDrawPropertiesAndUpdateTiles(pending_layer(), 1.f, 1.f, 1.f, 1.f, 0.f, | 1455 SetupDrawPropertiesAndUpdateTiles(pending_layer(), 1.f, 1.f, 1.f, 1.f, 0.f, |
| 1456 false); | 1456 false); |
| 1457 ASSERT_EQ(1u, pending_layer()->tilings()->num_tilings()); | 1457 ASSERT_EQ(1u, pending_layer()->tilings()->num_tilings()); |
| 1458 | 1458 |
| 1459 pending_layer()->tilings()->tiling_at(0)->CreateAllTilesForTesting(); | 1459 pending_layer()->tilings()->tiling_at(0)->CreateAllTilesForTesting(); |
| 1460 | 1460 |
| 1461 // Verify the tiles are not larger than the context's max texture size. | 1461 // Verify the tiles are not larger than the context's max texture size. |
| 1462 tile = pending_layer()->tilings()->tiling_at(0)->AllTilesForTesting()[0]; | 1462 tile = pending_layer()->tilings()->tiling_at(0)->AllTilesForTesting()[0]; |
| 1463 EXPECT_GE(140, tile->content_rect().width()); | 1463 EXPECT_GE(140, tile->content_rect().width()); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 1478 // There should be a single tile since the layer is small. | 1478 // There should be a single tile since the layer is small. |
| 1479 PictureLayerTiling* high_res_tiling = active_layer()->tilings()->tiling_at(0); | 1479 PictureLayerTiling* high_res_tiling = active_layer()->tilings()->tiling_at(0); |
| 1480 EXPECT_EQ(1u, high_res_tiling->AllTilesForTesting().size()); | 1480 EXPECT_EQ(1u, high_res_tiling->AllTilesForTesting().size()); |
| 1481 | 1481 |
| 1482 ResetTilingsAndRasterScales(); | 1482 ResetTilingsAndRasterScales(); |
| 1483 | 1483 |
| 1484 // Change the max texture size on the output surface context. | 1484 // Change the max texture size on the output surface context. |
| 1485 std::unique_ptr<TestWebGraphicsContext3D> context = | 1485 std::unique_ptr<TestWebGraphicsContext3D> context = |
| 1486 TestWebGraphicsContext3D::Create(); | 1486 TestWebGraphicsContext3D::Create(); |
| 1487 context->set_max_texture_size(140); | 1487 context->set_max_texture_size(140); |
| 1488 ResetOutputSurface(FakeOutputSurface::Create3d(std::move(context))); | 1488 ResetOutputSurface(FakeOutputSurface::CreateDelegating3d(std::move(context))); |
| 1489 | 1489 |
| 1490 SetupDrawPropertiesAndUpdateTiles(active_layer(), 1.f, 1.f, 1.f, 1.f, 0.f, | 1490 SetupDrawPropertiesAndUpdateTiles(active_layer(), 1.f, 1.f, 1.f, 1.f, 0.f, |
| 1491 false); | 1491 false); |
| 1492 ASSERT_LE(1u, active_layer()->tilings()->num_tilings()); | 1492 ASSERT_LE(1u, active_layer()->tilings()->num_tilings()); |
| 1493 | 1493 |
| 1494 active_layer()->tilings()->tiling_at(0)->CreateAllTilesForTesting(); | 1494 active_layer()->tilings()->tiling_at(0)->CreateAllTilesForTesting(); |
| 1495 | 1495 |
| 1496 // There should be more than one tile since the max texture size won't cover | 1496 // There should be more than one tile since the max texture size won't cover |
| 1497 // the layer. | 1497 // the layer. |
| 1498 high_res_tiling = active_layer()->tilings()->tiling_at(0); | 1498 high_res_tiling = active_layer()->tilings()->tiling_at(0); |
| (...skipping 2811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4310 void PictureLayerImplTest::TestQuadsForSolidColor(bool test_for_solid) { | 4310 void PictureLayerImplTest::TestQuadsForSolidColor(bool test_for_solid) { |
| 4311 host_impl()->AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); | 4311 host_impl()->AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); |
| 4312 | 4312 |
| 4313 gfx::Size tile_size(100, 100); | 4313 gfx::Size tile_size(100, 100); |
| 4314 gfx::Size layer_bounds(200, 200); | 4314 gfx::Size layer_bounds(200, 200); |
| 4315 gfx::Rect layer_rect(layer_bounds); | 4315 gfx::Rect layer_rect(layer_bounds); |
| 4316 | 4316 |
| 4317 FakeContentLayerClient client; | 4317 FakeContentLayerClient client; |
| 4318 client.set_bounds(layer_bounds); | 4318 client.set_bounds(layer_bounds); |
| 4319 scoped_refptr<PictureLayer> layer = PictureLayer::Create(&client); | 4319 scoped_refptr<PictureLayer> layer = PictureLayer::Create(&client); |
| 4320 FakeLayerTreeHostClient host_client(FakeLayerTreeHostClient::DIRECT_3D); | 4320 FakeLayerTreeHostClient host_client; |
| 4321 TestTaskGraphRunner task_graph_runner; | 4321 TestTaskGraphRunner task_graph_runner; |
| 4322 std::unique_ptr<FakeLayerTreeHost> host = | 4322 std::unique_ptr<FakeLayerTreeHost> host = |
| 4323 FakeLayerTreeHost::Create(&host_client, &task_graph_runner); | 4323 FakeLayerTreeHost::Create(&host_client, &task_graph_runner); |
| 4324 host->SetRootLayer(layer); | 4324 host->SetRootLayer(layer); |
| 4325 RecordingSource* recording_source = layer->GetRecordingSourceForTesting(); | 4325 RecordingSource* recording_source = layer->GetRecordingSourceForTesting(); |
| 4326 | 4326 |
| 4327 int frame_number = 0; | 4327 int frame_number = 0; |
| 4328 | 4328 |
| 4329 client.set_fill_with_nonsolid_color(!test_for_solid); | 4329 client.set_fill_with_nonsolid_color(!test_for_solid); |
| 4330 | 4330 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4373 TEST_F(PictureLayerImplTest, NonSolidToSolidNoTilings) { | 4373 TEST_F(PictureLayerImplTest, NonSolidToSolidNoTilings) { |
| 4374 host_impl()->AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); | 4374 host_impl()->AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); |
| 4375 | 4375 |
| 4376 gfx::Size tile_size(100, 100); | 4376 gfx::Size tile_size(100, 100); |
| 4377 gfx::Size layer_bounds(200, 200); | 4377 gfx::Size layer_bounds(200, 200); |
| 4378 gfx::Rect layer_rect(layer_bounds); | 4378 gfx::Rect layer_rect(layer_bounds); |
| 4379 | 4379 |
| 4380 FakeContentLayerClient client; | 4380 FakeContentLayerClient client; |
| 4381 client.set_bounds(layer_bounds); | 4381 client.set_bounds(layer_bounds); |
| 4382 scoped_refptr<PictureLayer> layer = PictureLayer::Create(&client); | 4382 scoped_refptr<PictureLayer> layer = PictureLayer::Create(&client); |
| 4383 FakeLayerTreeHostClient host_client(FakeLayerTreeHostClient::DIRECT_3D); | 4383 FakeLayerTreeHostClient host_client; |
| 4384 TestTaskGraphRunner task_graph_runner; | 4384 TestTaskGraphRunner task_graph_runner; |
| 4385 std::unique_ptr<FakeLayerTreeHost> host = | 4385 std::unique_ptr<FakeLayerTreeHost> host = |
| 4386 FakeLayerTreeHost::Create(&host_client, &task_graph_runner); | 4386 FakeLayerTreeHost::Create(&host_client, &task_graph_runner); |
| 4387 host->SetRootLayer(layer); | 4387 host->SetRootLayer(layer); |
| 4388 RecordingSource* recording_source = layer->GetRecordingSourceForTesting(); | 4388 RecordingSource* recording_source = layer->GetRecordingSourceForTesting(); |
| 4389 | 4389 |
| 4390 int frame_number = 0; | 4390 int frame_number = 0; |
| 4391 | 4391 |
| 4392 client.set_fill_with_nonsolid_color(true); | 4392 client.set_fill_with_nonsolid_color(true); |
| 4393 | 4393 |
| (...skipping 607 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5001 EXPECT_FLOAT_EQ(expected_contents_scale, | 5001 EXPECT_FLOAT_EQ(expected_contents_scale, |
| 5002 pending_layer_ptr->picture_layer_tiling_set() | 5002 pending_layer_ptr->picture_layer_tiling_set() |
| 5003 ->FindTilingWithResolution(HIGH_RESOLUTION) | 5003 ->FindTilingWithResolution(HIGH_RESOLUTION) |
| 5004 ->contents_scale()) | 5004 ->contents_scale()) |
| 5005 << "ideal_contents_scale: " << ideal_contents_scale; | 5005 << "ideal_contents_scale: " << ideal_contents_scale; |
| 5006 } | 5006 } |
| 5007 } | 5007 } |
| 5008 | 5008 |
| 5009 } // namespace | 5009 } // namespace |
| 5010 } // namespace cc | 5010 } // namespace cc |
| OLD | NEW |