OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/paint/discardable_image_map.h" | 5 #include "cc/paint/discardable_image_map.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
593 // transforms, so we can't let the scale drop all the way to 0. | 593 // transforms, so we can't let the scale drop all the way to 0. |
594 static constexpr float kMinScale = 0.1f; | 594 static constexpr float kMinScale = 0.1f; |
595 | 595 |
596 for (int y = 0; y < 4; ++y) { | 596 for (int y = 0; y < 4; ++y) { |
597 for (int x = 0; x < 4; ++x) { | 597 for (int x = 0; x < 4; ++x) { |
598 if ((x + y) & 1) { | 598 if ((x + y) & 1) { |
599 discardable_image[y][x] = CreateDiscardableImage(gfx::Size(500, 500)); | 599 discardable_image[y][x] = CreateDiscardableImage(gfx::Size(500, 500)); |
600 SkMatrix scale = SkMatrix::MakeScale(std::max(x * 0.5f, kMinScale), | 600 SkMatrix scale = SkMatrix::MakeScale(std::max(x * 0.5f, kMinScale), |
601 std::max(y * 0.5f, kMinScale)); | 601 std::max(y * 0.5f, kMinScale)); |
602 PaintFlags flags; | 602 PaintFlags flags; |
603 flags.setShader(discardable_image[y][x]->makeShader( | 603 flags.setShader(base::MakeUnique<PaintShader>( |
604 SkShader::kClamp_TileMode, SkShader::kClamp_TileMode, &scale)); | 604 discardable_image[y][x], SkShader::kClamp_TileMode, |
| 605 SkShader::kClamp_TileMode, &scale)); |
605 content_layer_client.add_draw_rect( | 606 content_layer_client.add_draw_rect( |
606 gfx::Rect(x * 512 + 6, y * 512 + 6, 500, 500), flags); | 607 gfx::Rect(x * 512 + 6, y * 512 + 6, 500, 500), flags); |
607 } | 608 } |
608 } | 609 } |
609 } | 610 } |
610 | 611 |
611 scoped_refptr<DisplayItemList> display_list = | 612 scoped_refptr<DisplayItemList> display_list = |
612 content_layer_client.PaintContentsToDisplayList( | 613 content_layer_client.PaintContentsToDisplayList( |
613 ContentLayerClient::PAINTING_BEHAVIOR_NORMAL); | 614 ContentLayerClient::PAINTING_BEHAVIOR_NORMAL); |
614 display_list->GenerateDiscardableImagesMetadata(); | 615 display_list->GenerateDiscardableImagesMetadata(); |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
709 EXPECT_TRUE(discardable_image == images[0].paint_image()); | 710 EXPECT_TRUE(discardable_image == images[0].paint_image()); |
710 | 711 |
711 images.clear(); | 712 images.clear(); |
712 image_map_.GetDiscardableImagesInRect(gfx::Rect(105, 105, 5, 95), 1.f, | 713 image_map_.GetDiscardableImagesInRect(gfx::Rect(105, 105, 5, 95), 1.f, |
713 target_color_space, &images); | 714 target_color_space, &images); |
714 EXPECT_EQ(1u, images.size()); | 715 EXPECT_EQ(1u, images.size()); |
715 EXPECT_TRUE(discardable_image2 == images[0].paint_image()); | 716 EXPECT_TRUE(discardable_image2 == images[0].paint_image()); |
716 } | 717 } |
717 | 718 |
718 } // namespace cc | 719 } // namespace cc |
OLD | NEW |