Index: cc/surfaces/surface_hittest_unittest.cc |
diff --git a/cc/surfaces/surface_hittest_unittest.cc b/cc/surfaces/surface_hittest_unittest.cc |
index 54a5b3647019105f41e2688a56c46ad9cdb2030a..59adb8fa7513a58ff1ccf1d818155223163c814a 100644 |
--- a/cc/surfaces/surface_hittest_unittest.cc |
+++ b/cc/surfaces/surface_hittest_unittest.cc |
@@ -66,8 +66,7 @@ TEST(SurfaceHittestTest, Hittest_BadCompositorFrameDoesNotCrash) { |
// Creates a root surface. |
gfx::Rect root_rect(300, 300); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
- CreateCompositorFrame(root_rect, &root_pass); |
+ CompositorFrame root_frame = CreateCompositorFrame(root_rect, &root_pass); |
// Add a reference to a non-existant child surface on the root surface. |
SurfaceId child_surface_id(3, 0xdeadbeef, 0); |
@@ -82,7 +81,9 @@ TEST(SurfaceHittestTest, Hittest_BadCompositorFrameDoesNotCrash) { |
SurfaceIdAllocator root_allocator(2); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
{ |
@@ -105,14 +106,15 @@ TEST(SurfaceHittestTest, Hittest_SingleSurface) { |
// Creates a root surface. |
gfx::Rect root_rect(300, 300); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
- CreateCompositorFrame(root_rect, &root_pass); |
+ CompositorFrame root_frame = CreateCompositorFrame(root_rect, &root_pass); |
// Submit the root frame. |
SurfaceIdAllocator root_allocator(2); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
TestCase tests[] = { |
{ |
@@ -136,8 +138,7 @@ TEST(SurfaceHittestTest, Hittest_ChildSurface) { |
// Creates a root surface. |
gfx::Rect root_rect(300, 300); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
- CreateCompositorFrame(root_rect, &root_pass); |
+ CompositorFrame root_frame = CreateCompositorFrame(root_rect, &root_pass); |
// Add a reference to the child surface on the root surface. |
SurfaceIdAllocator child_allocator(3); |
@@ -156,13 +157,14 @@ TEST(SurfaceHittestTest, Hittest_ChildSurface) { |
SurfaceIdAllocator root_allocator(2); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
// Creates a child surface. |
RenderPass* child_pass = nullptr; |
- std::unique_ptr<CompositorFrame> child_frame = |
- CreateCompositorFrame(child_rect, &child_pass); |
+ CompositorFrame child_frame = CreateCompositorFrame(child_rect, &child_pass); |
// Add a solid quad in the child surface. |
gfx::Rect child_solid_quad_rect(100, 100); |
@@ -176,7 +178,9 @@ TEST(SurfaceHittestTest, Hittest_ChildSurface) { |
// Submit the frame. |
factory.Create(child_surface_id); |
- factory.SubmitCompositorFrame(child_surface_id, std::move(child_frame), |
+ std::unique_ptr<CompositorFrame> child_frame_copy(new CompositorFrame); |
+ *child_frame_copy = std::move(child_frame); |
+ factory.SubmitCompositorFrame(child_surface_id, std::move(child_frame_copy), |
SurfaceFactory::DrawCallback()); |
TestCase tests[] = { |
@@ -230,7 +234,9 @@ TEST(SurfaceHittestTest, Hittest_ChildSurface) { |
root_rect, |
child_rect, |
child_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ root_frame_copy.reset(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
// Verify that point (100, 100) no longer falls on the child surface. |
@@ -269,8 +275,7 @@ TEST(SurfaceHittestTest, Hittest_InvalidRenderPassDrawQuad) { |
// Creates a root surface. |
gfx::Rect root_rect(300, 300); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
- CreateCompositorFrame(root_rect, &root_pass); |
+ CompositorFrame root_frame = CreateCompositorFrame(root_rect, &root_pass); |
// Create a RenderPassDrawQuad to a non-existant RenderPass. |
CreateRenderPassDrawQuad(root_pass, |
@@ -296,13 +301,14 @@ TEST(SurfaceHittestTest, Hittest_InvalidRenderPassDrawQuad) { |
SurfaceIdAllocator root_allocator(2); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
// Creates a child surface. |
RenderPass* child_pass = nullptr; |
- std::unique_ptr<CompositorFrame> child_frame = |
- CreateCompositorFrame(child_rect, &child_pass); |
+ CompositorFrame child_frame = CreateCompositorFrame(child_rect, &child_pass); |
// Add a solid quad in the child surface. |
gfx::Rect child_solid_quad_rect(100, 100); |
@@ -316,7 +322,9 @@ TEST(SurfaceHittestTest, Hittest_InvalidRenderPassDrawQuad) { |
// Submit the frame. |
factory.Create(child_surface_id); |
- factory.SubmitCompositorFrame(child_surface_id, std::move(child_frame), |
+ std::unique_ptr<CompositorFrame> child_frame_copy(new CompositorFrame); |
+ *child_frame_copy = std::move(child_frame); |
+ factory.SubmitCompositorFrame(child_surface_id, std::move(child_frame_copy), |
SurfaceFactory::DrawCallback()); |
TestCase tests[] = { |
@@ -390,9 +398,9 @@ TEST(SurfaceHittestTest, Hittest_RenderPassDrawQuad) { |
&render_pass_list); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
+ CompositorFrame root_frame = |
CreateCompositorFrameWithRenderPassList(&render_pass_list); |
- root_pass = root_frame->delegated_frame_data->render_pass_list.back().get(); |
+ root_pass = root_frame.delegated_frame_data->render_pass_list.back().get(); |
// Create a RenderPassDrawQuad. |
gfx::Rect render_pass_quad_rect(100, 100); |
@@ -404,7 +412,7 @@ TEST(SurfaceHittestTest, Hittest_RenderPassDrawQuad) { |
// Add a solid quad in the child render pass. |
RenderPass* child_render_pass = |
- root_frame->delegated_frame_data->render_pass_list.front().get(); |
+ root_frame.delegated_frame_data->render_pass_list.front().get(); |
gfx::Rect child_solid_quad_rect(100, 100); |
CreateSolidColorDrawQuad(child_render_pass, |
gfx::Transform(), |
@@ -415,7 +423,9 @@ TEST(SurfaceHittestTest, Hittest_RenderPassDrawQuad) { |
SurfaceIdAllocator root_allocator(1); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
TestCase tests[] = { |
@@ -475,8 +485,7 @@ TEST(SurfaceHittestTest, Hittest_SingleSurface_WithInsetsDelegate) { |
// Creates a root surface. |
gfx::Rect root_rect(300, 300); |
RenderPass* root_pass = nullptr; |
- std::unique_ptr<CompositorFrame> root_frame = |
- CreateCompositorFrame(root_rect, &root_pass); |
+ CompositorFrame root_frame = CreateCompositorFrame(root_rect, &root_pass); |
// Add a reference to the child surface on the root surface. |
SurfaceIdAllocator child_allocator(3); |
@@ -494,13 +503,14 @@ TEST(SurfaceHittestTest, Hittest_SingleSurface_WithInsetsDelegate) { |
SurfaceIdAllocator root_allocator(2); |
SurfaceId root_surface_id = root_allocator.GenerateId(); |
factory.Create(root_surface_id); |
- factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame), |
+ std::unique_ptr<CompositorFrame> root_frame_copy(new CompositorFrame); |
+ *root_frame_copy = std::move(root_frame); |
+ factory.SubmitCompositorFrame(root_surface_id, std::move(root_frame_copy), |
SurfaceFactory::DrawCallback()); |
// Creates a child surface. |
RenderPass* child_pass = nullptr; |
- std::unique_ptr<CompositorFrame> child_frame = |
- CreateCompositorFrame(child_rect, &child_pass); |
+ CompositorFrame child_frame = CreateCompositorFrame(child_rect, &child_pass); |
// Add a solid quad in the child surface. |
gfx::Rect child_solid_quad_rect(190, 190); |
@@ -512,7 +522,9 @@ TEST(SurfaceHittestTest, Hittest_SingleSurface_WithInsetsDelegate) { |
// Submit the frame. |
factory.Create(child_surface_id); |
- factory.SubmitCompositorFrame(child_surface_id, std::move(child_frame), |
+ std::unique_ptr<CompositorFrame> frame_copy(new CompositorFrame); |
+ *frame_copy = std::move(child_frame); |
+ factory.SubmitCompositorFrame(child_surface_id, std::move(frame_copy), |
SurfaceFactory::DrawCallback()); |
TestCase test_expectations_without_insets[] = { |