Index: cc/trees/layer_tree_host_impl_unittest.cc |
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc |
index a9e5a559a68a02739e4a0aea73abb2d1255eccb2..de683f838311e4290aae25404994f1ac047e2633 100644 |
--- a/cc/trees/layer_tree_host_impl_unittest.cc |
+++ b/cc/trees/layer_tree_host_impl_unittest.cc |
@@ -128,6 +128,7 @@ class LayerTreeHostImplTest : public testing::Test, |
LayerTreeSettings DefaultSettings() { |
LayerTreeSettings settings; |
+ settings.enable_surface_synchronization = true; |
settings.minimum_occlusion_tracking_size = gfx::Size(); |
settings.renderer_settings.texture_id_allocation_chunk_size = 1; |
settings.renderer_settings.buffer_to_texture_target_map = |
@@ -3453,24 +3454,33 @@ TEST_F(LayerTreeHostImplTest, MouseMoveAtWithDeviceScaleOf2) { |
SetupMouseMoveAtWithDeviceScale(2.f); |
} |
-// This test verifies that only SurfaceLayers in the viewport are included |
-// in CompositorFrameMetadata's |activation_dependencies|. |
-TEST_F(LayerTreeHostImplTest, EmbeddedSurfacesInMetadata) { |
+// This test verifies that only SurfaceLayers in the viewport and have fallbacks |
+// that are different are included in CompositorFrameMetadata's |
+// |activation_dependencies|. |
+TEST_F(LayerTreeHostImplTest, ActivationDependenciesInMetadata) { |
SetupScrollAndContentsLayers(gfx::Size(100, 100)); |
host_impl_->SetViewportSize(gfx::Size(50, 50)); |
LayerImpl* root = host_impl_->active_tree()->root_layer_for_testing(); |
- std::vector<SurfaceId> children = {MakeSurfaceId(FrameSinkId(1, 1), 1), |
- MakeSurfaceId(FrameSinkId(2, 2), 2), |
- MakeSurfaceId(FrameSinkId(3, 3), 3)}; |
- for (size_t i = 0; i < children.size(); ++i) { |
+ std::vector<SurfaceId> primary_surfaces = { |
+ MakeSurfaceId(FrameSinkId(1, 1), 1), MakeSurfaceId(FrameSinkId(2, 2), 2), |
+ MakeSurfaceId(FrameSinkId(3, 3), 3)}; |
+ |
+ std::vector<SurfaceId> fallback_surfaces = { |
+ MakeSurfaceId(FrameSinkId(4, 4), 1), MakeSurfaceId(FrameSinkId(4, 4), 2), |
+ MakeSurfaceId(FrameSinkId(4, 4), 3)}; |
+ |
+ for (size_t i = 0; i < primary_surfaces.size(); ++i) { |
std::unique_ptr<SurfaceLayerImpl> child = |
SurfaceLayerImpl::Create(host_impl_->active_tree(), i + 6); |
child->SetPosition(gfx::PointF(25.f * i, 0.f)); |
child->SetBounds(gfx::Size(1, 1)); |
child->SetDrawsContent(true); |
child->SetPrimarySurfaceInfo( |
- SurfaceInfo(children[i], 1.f /* device_scale_factor */, |
+ SurfaceInfo(primary_surfaces[i], 1.f /* device_scale_factor */, |
+ gfx::Size(10, 10) /* size_in_pixels */)); |
+ child->SetFallbackSurfaceInfo( |
+ SurfaceInfo(fallback_surfaces[i], 1.f /* device_scale_factor */, |
gfx::Size(10, 10) /* size_in_pixels */)); |
root->test_properties()->AddChild(std::move(child)); |
} |
@@ -3483,11 +3493,13 @@ TEST_F(LayerTreeHostImplTest, EmbeddedSurfacesInMetadata) { |
host_impl_->compositor_frame_sink()); |
const CompositorFrameMetadata& metadata = |
fake_compositor_frame_sink->last_sent_frame()->metadata; |
- EXPECT_THAT(metadata.activation_dependencies, |
- testing::UnorderedElementsAre(children[0], children[1])); |
+ EXPECT_THAT( |
+ metadata.activation_dependencies, |
+ testing::UnorderedElementsAre(primary_surfaces[0], primary_surfaces[1])); |
EXPECT_THAT( |
metadata.referenced_surfaces, |
- testing::UnorderedElementsAre(children[0], children[1], children[2])); |
+ testing::UnorderedElementsAre(fallback_surfaces[0], fallback_surfaces[1], |
+ fallback_surfaces[2])); |
} |
TEST_F(LayerTreeHostImplTest, CompositorFrameMetadata) { |