OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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/append_quads_data.h" | 5 #include "cc/layers/append_quads_data.h" |
6 #include "cc/layers/layer_impl.h" | 6 #include "cc/layers/layer_impl.h" |
7 #include "cc/layers/render_pass_sink.h" | 7 #include "cc/layers/render_pass_sink.h" |
8 #include "cc/layers/render_surface_impl.h" | 8 #include "cc/layers/render_surface_impl.h" |
9 #include "cc/quads/shared_quad_state.h" | 9 #include "cc/quads/shared_quad_state.h" |
10 #include "cc/test/fake_impl_task_runner_provider.h" | 10 #include "cc/test/fake_impl_task_runner_provider.h" |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 scoped_ptr<LayerImpl> owning_layer = | 94 scoped_ptr<LayerImpl> owning_layer = |
95 LayerImpl::Create(host_impl.active_tree(), 2); | 95 LayerImpl::Create(host_impl.active_tree(), 2); |
96 owning_layer->SetHasRenderSurface(true); | 96 owning_layer->SetHasRenderSurface(true); |
97 ASSERT_TRUE(owning_layer->render_surface()); | 97 ASSERT_TRUE(owning_layer->render_surface()); |
98 owning_layer->draw_properties().render_target = owning_layer.get(); | 98 owning_layer->draw_properties().render_target = owning_layer.get(); |
99 | 99 |
100 SkXfermode::Mode blend_mode = SkXfermode::kSoftLight_Mode; | 100 SkXfermode::Mode blend_mode = SkXfermode::kSoftLight_Mode; |
101 owning_layer->SetBlendMode(blend_mode); | 101 owning_layer->SetBlendMode(blend_mode); |
102 RenderSurfaceImpl* render_surface = owning_layer->render_surface(); | 102 RenderSurfaceImpl* render_surface = owning_layer->render_surface(); |
103 | 103 |
104 root_layer->AddChild(owning_layer.Pass()); | 104 root_layer->AddChild(std::move(owning_layer)); |
105 | 105 |
106 gfx::Rect content_rect(0, 0, 50, 50); | 106 gfx::Rect content_rect(0, 0, 50, 50); |
107 gfx::Rect clip_rect(5, 5, 40, 40); | 107 gfx::Rect clip_rect(5, 5, 40, 40); |
108 gfx::Transform origin; | 108 gfx::Transform origin; |
109 origin.Translate(30, 40); | 109 origin.Translate(30, 40); |
110 | 110 |
111 render_surface->SetContentRect(content_rect); | 111 render_surface->SetContentRect(content_rect); |
112 render_surface->SetClipRect(clip_rect); | 112 render_surface->SetClipRect(clip_rect); |
113 render_surface->SetDrawOpacity(1.f); | 113 render_surface->SetDrawOpacity(1.f); |
114 | 114 |
(...skipping 16 matching lines...) Expand all Loading... |
131 shared_quad_state->quad_to_target_transform.matrix().getDouble(1, 3)); | 131 shared_quad_state->quad_to_target_transform.matrix().getDouble(1, 3)); |
132 EXPECT_EQ(content_rect, | 132 EXPECT_EQ(content_rect, |
133 gfx::Rect(shared_quad_state->visible_quad_layer_rect)); | 133 gfx::Rect(shared_quad_state->visible_quad_layer_rect)); |
134 EXPECT_EQ(1.f, shared_quad_state->opacity); | 134 EXPECT_EQ(1.f, shared_quad_state->opacity); |
135 EXPECT_EQ(blend_mode, shared_quad_state->blend_mode); | 135 EXPECT_EQ(blend_mode, shared_quad_state->blend_mode); |
136 } | 136 } |
137 | 137 |
138 class TestRenderPassSink : public RenderPassSink { | 138 class TestRenderPassSink : public RenderPassSink { |
139 public: | 139 public: |
140 void AppendRenderPass(scoped_ptr<RenderPass> render_pass) override { | 140 void AppendRenderPass(scoped_ptr<RenderPass> render_pass) override { |
141 render_passes_.push_back(render_pass.Pass()); | 141 render_passes_.push_back(std::move(render_pass)); |
142 } | 142 } |
143 | 143 |
144 const RenderPassList& RenderPasses() const { | 144 const RenderPassList& RenderPasses() const { |
145 return render_passes_; | 145 return render_passes_; |
146 } | 146 } |
147 | 147 |
148 private: | 148 private: |
149 RenderPassList render_passes_; | 149 RenderPassList render_passes_; |
150 }; | 150 }; |
151 | 151 |
152 TEST(RenderSurfaceTest, SanityCheckSurfaceCreatesCorrectRenderPass) { | 152 TEST(RenderSurfaceTest, SanityCheckSurfaceCreatesCorrectRenderPass) { |
153 FakeImplTaskRunnerProvider task_runner_provider; | 153 FakeImplTaskRunnerProvider task_runner_provider; |
154 TestSharedBitmapManager shared_bitmap_manager; | 154 TestSharedBitmapManager shared_bitmap_manager; |
155 TestTaskGraphRunner task_graph_runner; | 155 TestTaskGraphRunner task_graph_runner; |
156 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 156 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
157 &task_graph_runner); | 157 &task_graph_runner); |
158 scoped_ptr<LayerImpl> root_layer = | 158 scoped_ptr<LayerImpl> root_layer = |
159 LayerImpl::Create(host_impl.active_tree(), 1); | 159 LayerImpl::Create(host_impl.active_tree(), 1); |
160 | 160 |
161 scoped_ptr<LayerImpl> owning_layer = | 161 scoped_ptr<LayerImpl> owning_layer = |
162 LayerImpl::Create(host_impl.active_tree(), 2); | 162 LayerImpl::Create(host_impl.active_tree(), 2); |
163 owning_layer->SetHasRenderSurface(true); | 163 owning_layer->SetHasRenderSurface(true); |
164 ASSERT_TRUE(owning_layer->render_surface()); | 164 ASSERT_TRUE(owning_layer->render_surface()); |
165 owning_layer->draw_properties().render_target = owning_layer.get(); | 165 owning_layer->draw_properties().render_target = owning_layer.get(); |
166 RenderSurfaceImpl* render_surface = owning_layer->render_surface(); | 166 RenderSurfaceImpl* render_surface = owning_layer->render_surface(); |
167 | 167 |
168 root_layer->AddChild(owning_layer.Pass()); | 168 root_layer->AddChild(std::move(owning_layer)); |
169 | 169 |
170 gfx::Rect content_rect(0, 0, 50, 50); | 170 gfx::Rect content_rect(0, 0, 50, 50); |
171 gfx::Transform origin; | 171 gfx::Transform origin; |
172 origin.Translate(30.0, 40.0); | 172 origin.Translate(30.0, 40.0); |
173 | 173 |
174 render_surface->SetScreenSpaceTransform(origin); | 174 render_surface->SetScreenSpaceTransform(origin); |
175 render_surface->SetContentRect(content_rect); | 175 render_surface->SetContentRect(content_rect); |
176 | 176 |
177 TestRenderPassSink pass_sink; | 177 TestRenderPassSink pass_sink; |
178 | 178 |
179 render_surface->AppendRenderPasses(&pass_sink); | 179 render_surface->AppendRenderPasses(&pass_sink); |
180 | 180 |
181 ASSERT_EQ(1u, pass_sink.RenderPasses().size()); | 181 ASSERT_EQ(1u, pass_sink.RenderPasses().size()); |
182 RenderPass* pass = pass_sink.RenderPasses()[0].get(); | 182 RenderPass* pass = pass_sink.RenderPasses()[0].get(); |
183 | 183 |
184 EXPECT_EQ(RenderPassId(2, 0), pass->id); | 184 EXPECT_EQ(RenderPassId(2, 0), pass->id); |
185 EXPECT_EQ(content_rect, pass->output_rect); | 185 EXPECT_EQ(content_rect, pass->output_rect); |
186 EXPECT_EQ(origin, pass->transform_to_root_target); | 186 EXPECT_EQ(origin, pass->transform_to_root_target); |
187 } | 187 } |
188 | 188 |
189 } // namespace | 189 } // namespace |
190 } // namespace cc | 190 } // namespace cc |
OLD | NEW |