Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/delegated_renderer_layer_impl.h" | 5 #include "cc/layers/delegated_renderer_layer_impl.h" |
| 6 | 6 |
| 7 #include "cc/base/scoped_ptr_vector.h" | 7 #include "cc/base/scoped_ptr_vector.h" |
| 8 #include "cc/layers/solid_color_layer_impl.h" | 8 #include "cc/layers/solid_color_layer_impl.h" |
| 9 #include "cc/quads/render_pass_draw_quad.h" | 9 #include "cc/quads/render_pass_draw_quad.h" |
| 10 #include "cc/quads/solid_color_draw_quad.h" | 10 #include "cc/quads/solid_color_draw_quad.h" |
| (...skipping 776 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 787 protected: | 787 protected: |
| 788 LayerImpl* root_layer_; | 788 LayerImpl* root_layer_; |
| 789 DelegatedRendererLayerImpl* delegated_renderer_layer_; | 789 DelegatedRendererLayerImpl* delegated_renderer_layer_; |
| 790 bool root_delegated_render_pass_is_clipped_; | 790 bool root_delegated_render_pass_is_clipped_; |
| 791 float delegated_device_scale_factor_; | 791 float delegated_device_scale_factor_; |
| 792 }; | 792 }; |
| 793 | 793 |
| 794 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_NoSurface) { | 794 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_NoSurface) { |
| 795 root_delegated_render_pass_is_clipped_ = false; | 795 root_delegated_render_pass_is_clipped_ = false; |
| 796 SetUpTest(); | 796 SetUpTest(); |
| 797 | |
|
Ian Vollick
2015/07/09 14:26:27
nit: no need for spurious whitespace changes.
jaydasika
2015/07/09 15:11:49
Done.
| |
| 798 LayerTreeHostImpl::FrameData frame; | 797 LayerTreeHostImpl::FrameData frame; |
| 799 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 798 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 800 | 799 |
| 801 const SharedQuadState* root_delegated_shared_quad_state = nullptr; | 800 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 802 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; | 801 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 803 VerifyRenderPasses( | 802 VerifyRenderPasses( |
| 804 frame, | 803 frame, |
| 805 2, | 804 2, |
| 806 &root_delegated_shared_quad_state, | 805 &root_delegated_shared_quad_state, |
| 807 &contrib_delegated_shared_quad_state); | 806 &contrib_delegated_shared_quad_state); |
| (...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1243 host_impl_->DidDrawAllLayers(frame); | 1242 host_impl_->DidDrawAllLayers(frame); |
| 1244 } | 1243 } |
| 1245 | 1244 |
| 1246 TEST_F(DelegatedRendererLayerImplTestClip, | 1245 TEST_F(DelegatedRendererLayerImplTestClip, |
| 1247 QuadsUnclipped_LayerClipped_NoSurface) { | 1246 QuadsUnclipped_LayerClipped_NoSurface) { |
| 1248 root_delegated_render_pass_is_clipped_ = false; | 1247 root_delegated_render_pass_is_clipped_ = false; |
| 1249 clip_delegated_renderer_layer_ = true; | 1248 clip_delegated_renderer_layer_ = true; |
| 1250 SetUpTest(); | 1249 SetUpTest(); |
| 1251 | 1250 |
| 1252 LayerTreeHostImpl::FrameData frame; | 1251 LayerTreeHostImpl::FrameData frame; |
| 1252 host_impl_->active_tree()->BuildPropertyTreesForTesting(); | |
| 1253 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1253 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 1254 | 1254 |
| 1255 ASSERT_EQ(2u, frame.render_passes.size()); | 1255 ASSERT_EQ(2u, frame.render_passes.size()); |
| 1256 const QuadList& contrib_delegated_quad_list = | 1256 const QuadList& contrib_delegated_quad_list = |
| 1257 frame.render_passes[0]->quad_list; | 1257 frame.render_passes[0]->quad_list; |
| 1258 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1258 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
| 1259 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1259 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
| 1260 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1260 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
| 1261 const SharedQuadState* root_delegated_shared_quad_state = | 1261 const SharedQuadState* root_delegated_shared_quad_state = |
| 1262 root_delegated_quad_list.front()->shared_quad_state; | 1262 root_delegated_quad_list.front()->shared_quad_state; |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 1273 host_impl_->DidDrawAllLayers(frame); | 1273 host_impl_->DidDrawAllLayers(frame); |
| 1274 } | 1274 } |
| 1275 | 1275 |
| 1276 TEST_F(DelegatedRendererLayerImplTestClip, | 1276 TEST_F(DelegatedRendererLayerImplTestClip, |
| 1277 QuadsClipped_LayerClipped_NoSurface) { | 1277 QuadsClipped_LayerClipped_NoSurface) { |
| 1278 root_delegated_render_pass_is_clipped_ = true; | 1278 root_delegated_render_pass_is_clipped_ = true; |
| 1279 clip_delegated_renderer_layer_ = true; | 1279 clip_delegated_renderer_layer_ = true; |
| 1280 SetUpTest(); | 1280 SetUpTest(); |
| 1281 | 1281 |
| 1282 LayerTreeHostImpl::FrameData frame; | 1282 LayerTreeHostImpl::FrameData frame; |
| 1283 host_impl_->active_tree()->BuildPropertyTreesForTesting(); | |
| 1283 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1284 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 1284 | 1285 |
| 1285 ASSERT_EQ(2u, frame.render_passes.size()); | 1286 ASSERT_EQ(2u, frame.render_passes.size()); |
| 1286 const QuadList& contrib_delegated_quad_list = | 1287 const QuadList& contrib_delegated_quad_list = |
| 1287 frame.render_passes[0]->quad_list; | 1288 frame.render_passes[0]->quad_list; |
| 1288 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1289 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
| 1289 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1290 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
| 1290 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1291 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
| 1291 const SharedQuadState* root_delegated_shared_quad_state = | 1292 const SharedQuadState* root_delegated_shared_quad_state = |
| 1292 root_delegated_quad_list.front()->shared_quad_state; | 1293 root_delegated_quad_list.front()->shared_quad_state; |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1363 | 1364 |
| 1364 TEST_F(DelegatedRendererLayerImplTestClip, | 1365 TEST_F(DelegatedRendererLayerImplTestClip, |
| 1365 QuadsUnclipped_LayerClipped_Surface) { | 1366 QuadsUnclipped_LayerClipped_Surface) { |
| 1366 root_delegated_render_pass_is_clipped_ = false; | 1367 root_delegated_render_pass_is_clipped_ = false; |
| 1367 clip_delegated_renderer_layer_ = true; | 1368 clip_delegated_renderer_layer_ = true; |
| 1368 SetUpTest(); | 1369 SetUpTest(); |
| 1369 | 1370 |
| 1370 delegated_renderer_layer_->SetHasRenderSurface(true); | 1371 delegated_renderer_layer_->SetHasRenderSurface(true); |
| 1371 | 1372 |
| 1372 LayerTreeHostImpl::FrameData frame; | 1373 LayerTreeHostImpl::FrameData frame; |
| 1374 host_impl_->active_tree()->BuildPropertyTreesForTesting(); | |
| 1373 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1375 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 1374 | 1376 |
| 1375 ASSERT_EQ(3u, frame.render_passes.size()); | 1377 ASSERT_EQ(3u, frame.render_passes.size()); |
| 1376 const QuadList& contrib_delegated_quad_list = | 1378 const QuadList& contrib_delegated_quad_list = |
| 1377 frame.render_passes[0]->quad_list; | 1379 frame.render_passes[0]->quad_list; |
| 1378 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1380 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
| 1379 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1381 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
| 1380 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1382 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
| 1381 const SharedQuadState* root_delegated_shared_quad_state = | 1383 const SharedQuadState* root_delegated_shared_quad_state = |
| 1382 root_delegated_quad_list.front()->shared_quad_state; | 1384 root_delegated_quad_list.front()->shared_quad_state; |
| 1383 | 1385 |
| 1384 // When the layer owns a surface, the quads don't need to be clipped | 1386 // When the layer owns a surface, the quads don't need to be clipped |
| 1385 // further than they already specify. If they aren't clipped, then their | 1387 // further than they already specify. If they aren't clipped, then their |
| 1386 // clip rect is ignored, and they are not set as clipped. | 1388 // clip rect is ignored, and they are not set as clipped. |
| 1387 EXPECT_FALSE(root_delegated_shared_quad_state->is_clipped); | 1389 EXPECT_FALSE(root_delegated_shared_quad_state->is_clipped); |
| 1388 | 1390 |
| 1389 host_impl_->DrawLayers(&frame); | 1391 host_impl_->DrawLayers(&frame); |
| 1390 host_impl_->DidDrawAllLayers(frame); | 1392 host_impl_->DidDrawAllLayers(frame); |
| 1391 } | 1393 } |
| 1392 | 1394 |
| 1393 TEST_F(DelegatedRendererLayerImplTestClip, QuadsClipped_LayerClipped_Surface) { | 1395 TEST_F(DelegatedRendererLayerImplTestClip, QuadsClipped_LayerClipped_Surface) { |
| 1394 root_delegated_render_pass_is_clipped_ = true; | 1396 root_delegated_render_pass_is_clipped_ = true; |
| 1395 clip_delegated_renderer_layer_ = true; | 1397 clip_delegated_renderer_layer_ = true; |
| 1396 SetUpTest(); | 1398 SetUpTest(); |
| 1397 | 1399 |
| 1398 delegated_renderer_layer_->SetHasRenderSurface(true); | 1400 delegated_renderer_layer_->SetHasRenderSurface(true); |
| 1399 | 1401 |
| 1400 LayerTreeHostImpl::FrameData frame; | 1402 LayerTreeHostImpl::FrameData frame; |
| 1403 host_impl_->active_tree()->BuildPropertyTreesForTesting(); | |
| 1401 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1404 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 1402 | 1405 |
| 1403 ASSERT_EQ(3u, frame.render_passes.size()); | 1406 ASSERT_EQ(3u, frame.render_passes.size()); |
| 1404 const QuadList& contrib_delegated_quad_list = | 1407 const QuadList& contrib_delegated_quad_list = |
| 1405 frame.render_passes[0]->quad_list; | 1408 frame.render_passes[0]->quad_list; |
| 1406 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1409 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
| 1407 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1410 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
| 1408 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1411 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
| 1409 const SharedQuadState* root_delegated_shared_quad_state = | 1412 const SharedQuadState* root_delegated_shared_quad_state = |
| 1410 root_delegated_quad_list.front()->shared_quad_state; | 1413 root_delegated_quad_list.front()->shared_quad_state; |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1674 scoped_ptr<DelegatedRendererLayerImpl> other_layer = | 1677 scoped_ptr<DelegatedRendererLayerImpl> other_layer = |
| 1675 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); | 1678 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); |
| 1676 | 1679 |
| 1677 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); | 1680 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); |
| 1678 | 1681 |
| 1679 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); | 1682 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); |
| 1680 } | 1683 } |
| 1681 | 1684 |
| 1682 } // namespace | 1685 } // namespace |
| 1683 } // namespace cc | 1686 } // namespace cc |
| OLD | NEW |