Index: ui/compositor/layer_unittest.cc |
diff --git a/ui/compositor/layer_unittest.cc b/ui/compositor/layer_unittest.cc |
index 75f29657e53620cc735248da11207cf9495fdbc8..fba80541b3bb886341678b58f8798f29f218306f 100644 |
--- a/ui/compositor/layer_unittest.cc |
+++ b/ui/compositor/layer_unittest.cc |
@@ -26,6 +26,7 @@ |
#include "cc/layers/layer.h" |
#include "cc/output/copy_output_request.h" |
#include "cc/output/copy_output_result.h" |
+#include "cc/surfaces/sequence_surface_reference_factory.h" |
#include "cc/surfaces/surface_id.h" |
#include "cc/surfaces/surface_sequence.h" |
#include "cc/test/pixel_test_utils.h" |
@@ -1809,9 +1810,15 @@ TEST_F(LayerWithDelegateTest, SetBoundsWhenInvisible) { |
namespace { |
-void FakeSatisfyCallback(const cc::SurfaceSequence&) {} |
+class TestSurfaceReferenceFactory : public cc::SequenceSurfaceReferenceFactory { |
+ protected: |
+ ~TestSurfaceReferenceFactory() override = default; |
-void FakeRequireCallback(const cc::SurfaceId&, const cc::SurfaceSequence&) {} |
+ private: |
+ void SatisfySequence(const cc::SurfaceSequence& seq) const override {} |
+ void RequireSequence(const cc::SurfaceId& id, |
+ const cc::SurfaceSequence& seq) const override {} |
+}; |
} // namespace |
@@ -1833,9 +1840,9 @@ TEST_F(LayerWithDelegateTest, ExternalContent) { |
// Showing surface content changes the underlying cc layer. |
before = child->cc_layer_for_testing(); |
- child->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback), |
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10), |
- 1.0, gfx::Size(10, 10)); |
+ child->SetShowSurface( |
+ cc::SurfaceInfo(cc::SurfaceId(), 1.0, gfx::Size(10, 10)), |
+ new TestSurfaceReferenceFactory(), gfx::Size(10, 10)); |
EXPECT_TRUE(child->cc_layer_for_testing()); |
EXPECT_NE(before.get(), child->cc_layer_for_testing()); |
@@ -1849,40 +1856,33 @@ TEST_F(LayerWithDelegateTest, ExternalContent) { |
TEST_F(LayerWithDelegateTest, ExternalContentMirroring) { |
std::unique_ptr<Layer> layer(CreateLayer(LAYER_SOLID_COLOR)); |
- const auto satisfy_callback = base::Bind(&FakeSatisfyCallback); |
- const auto require_callback = base::Bind(&FakeRequireCallback); |
- |
cc::SurfaceId surface_id( |
cc::FrameSinkId(0, 1), |
cc::LocalFrameId(2, base::UnguessableToken::Create())); |
- layer->SetShowSurface(surface_id, satisfy_callback, require_callback, |
- gfx::Size(10, 10), 1.0f, gfx::Size(10, 10)); |
+ cc::SurfaceInfo surface_info(surface_id, 1.0f, gfx::Size(10, 10)); |
+ layer->SetShowSurface(surface_info, new TestSurfaceReferenceFactory(), |
+ gfx::Size(10, 10)); |
const auto mirror = layer->Mirror(); |
auto* const cc_layer = mirror->cc_layer_for_testing(); |
const auto* surface = static_cast<cc::SurfaceLayer*>(cc_layer); |
// Mirroring preserves surface state. |
- EXPECT_EQ(surface_id, surface->surface_id()); |
- EXPECT_TRUE(satisfy_callback.Equals(surface->satisfy_callback())); |
- EXPECT_TRUE(require_callback.Equals(surface->require_callback())); |
- EXPECT_EQ(gfx::Size(10, 10), surface->surface_size()); |
- EXPECT_EQ(1.0f, surface->surface_scale()); |
+ EXPECT_EQ(surface_info, surface->surface_info()); |
surface_id = |
cc::SurfaceId(cc::FrameSinkId(1, 2), |
cc::LocalFrameId(3, base::UnguessableToken::Create())); |
- layer->SetShowSurface(surface_id, satisfy_callback, require_callback, |
- gfx::Size(20, 20), 2.0f, gfx::Size(20, 20)); |
+ cc::SurfaceInfo surface_info_2(surface_id, 2.0f, gfx::Size(20, 20)); |
+ layer->SetShowSurface(surface_info_2, new TestSurfaceReferenceFactory(), |
+ gfx::Size(20, 20)); |
// A new cc::Layer should be created for the mirror. |
EXPECT_NE(cc_layer, mirror->cc_layer_for_testing()); |
surface = static_cast<cc::SurfaceLayer*>(mirror->cc_layer_for_testing()); |
// Surface updates propagate to the mirror. |
- EXPECT_EQ(surface_id, surface->surface_id()); |
- EXPECT_EQ(gfx::Size(20, 20), surface->surface_size()); |
- EXPECT_EQ(2.0f, surface->surface_scale()); |
+ EXPECT_EQ(surface_info_2, surface->surface_info()); |
} |
// Verifies that layer filters still attached after changing implementation |
@@ -1899,9 +1899,9 @@ TEST_F(LayerWithDelegateTest, LayerFiltersSurvival) { |
// Showing surface content changes the underlying cc layer. |
scoped_refptr<cc::Layer> before = layer->cc_layer_for_testing(); |
- layer->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback), |
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10), |
- 1.0, gfx::Size(10, 10)); |
+ layer->SetShowSurface( |
+ cc::SurfaceInfo(cc::SurfaceId(), 1.0, gfx::Size(10, 10)), |
+ new TestSurfaceReferenceFactory(), gfx::Size(10, 10)); |
EXPECT_EQ(layer->layer_grayscale(), 0.5f); |
EXPECT_TRUE(layer->cc_layer_for_testing()); |
EXPECT_NE(before.get(), layer->cc_layer_for_testing()); |
@@ -2222,9 +2222,9 @@ TEST(LayerDelegateTest, DelegatedFrameDamage) { |
FrameDamageCheckingDelegate delegate; |
layer->set_delegate(&delegate); |
- layer->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback), |
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10), |
- 1.0, gfx::Size(10, 10)); |
+ layer->SetShowSurface( |
+ cc::SurfaceInfo(cc::SurfaceId(), 1.0, gfx::Size(10, 10)), |
+ new TestSurfaceReferenceFactory(), gfx::Size(10, 10)); |
EXPECT_FALSE(delegate.delegated_frame_damage_called()); |
layer->OnDelegatedFrameDamage(damage_rect); |