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 1232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1243 host_impl_->DidDrawAllLayers(frame); | 1243 host_impl_->DidDrawAllLayers(frame); |
1244 } | 1244 } |
1245 | 1245 |
1246 TEST_F(DelegatedRendererLayerImplTestClip, | 1246 TEST_F(DelegatedRendererLayerImplTestClip, |
1247 QuadsUnclipped_LayerClipped_NoSurface) { | 1247 QuadsUnclipped_LayerClipped_NoSurface) { |
1248 root_delegated_render_pass_is_clipped_ = false; | 1248 root_delegated_render_pass_is_clipped_ = false; |
1249 clip_delegated_renderer_layer_ = true; | 1249 clip_delegated_renderer_layer_ = true; |
1250 SetUpTest(); | 1250 SetUpTest(); |
1251 | 1251 |
1252 LayerTreeHostImpl::FrameData frame; | 1252 LayerTreeHostImpl::FrameData frame; |
| 1253 host_impl_->active_tree()->BuildPropertyTreesForTesting(); |
1253 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1254 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
1254 | 1255 |
1255 ASSERT_EQ(2u, frame.render_passes.size()); | 1256 ASSERT_EQ(2u, frame.render_passes.size()); |
1256 const QuadList& contrib_delegated_quad_list = | 1257 const QuadList& contrib_delegated_quad_list = |
1257 frame.render_passes[0]->quad_list; | 1258 frame.render_passes[0]->quad_list; |
1258 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1259 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
1259 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1260 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
1260 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1261 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
1261 const SharedQuadState* root_delegated_shared_quad_state = | 1262 const SharedQuadState* root_delegated_shared_quad_state = |
1262 root_delegated_quad_list.front()->shared_quad_state; | 1263 root_delegated_quad_list.front()->shared_quad_state; |
(...skipping 10 matching lines...) Expand all Loading... |
1273 host_impl_->DidDrawAllLayers(frame); | 1274 host_impl_->DidDrawAllLayers(frame); |
1274 } | 1275 } |
1275 | 1276 |
1276 TEST_F(DelegatedRendererLayerImplTestClip, | 1277 TEST_F(DelegatedRendererLayerImplTestClip, |
1277 QuadsClipped_LayerClipped_NoSurface) { | 1278 QuadsClipped_LayerClipped_NoSurface) { |
1278 root_delegated_render_pass_is_clipped_ = true; | 1279 root_delegated_render_pass_is_clipped_ = true; |
1279 clip_delegated_renderer_layer_ = true; | 1280 clip_delegated_renderer_layer_ = true; |
1280 SetUpTest(); | 1281 SetUpTest(); |
1281 | 1282 |
1282 LayerTreeHostImpl::FrameData frame; | 1283 LayerTreeHostImpl::FrameData frame; |
| 1284 host_impl_->active_tree()->BuildPropertyTreesForTesting(); |
1283 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1285 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
1284 | 1286 |
1285 ASSERT_EQ(2u, frame.render_passes.size()); | 1287 ASSERT_EQ(2u, frame.render_passes.size()); |
1286 const QuadList& contrib_delegated_quad_list = | 1288 const QuadList& contrib_delegated_quad_list = |
1287 frame.render_passes[0]->quad_list; | 1289 frame.render_passes[0]->quad_list; |
1288 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1290 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
1289 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1291 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
1290 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1292 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
1291 const SharedQuadState* root_delegated_shared_quad_state = | 1293 const SharedQuadState* root_delegated_shared_quad_state = |
1292 root_delegated_quad_list.front()->shared_quad_state; | 1294 root_delegated_quad_list.front()->shared_quad_state; |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1363 | 1365 |
1364 TEST_F(DelegatedRendererLayerImplTestClip, | 1366 TEST_F(DelegatedRendererLayerImplTestClip, |
1365 QuadsUnclipped_LayerClipped_Surface) { | 1367 QuadsUnclipped_LayerClipped_Surface) { |
1366 root_delegated_render_pass_is_clipped_ = false; | 1368 root_delegated_render_pass_is_clipped_ = false; |
1367 clip_delegated_renderer_layer_ = true; | 1369 clip_delegated_renderer_layer_ = true; |
1368 SetUpTest(); | 1370 SetUpTest(); |
1369 | 1371 |
1370 delegated_renderer_layer_->SetHasRenderSurface(true); | 1372 delegated_renderer_layer_->SetHasRenderSurface(true); |
1371 | 1373 |
1372 LayerTreeHostImpl::FrameData frame; | 1374 LayerTreeHostImpl::FrameData frame; |
| 1375 host_impl_->active_tree()->BuildPropertyTreesForTesting(); |
1373 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1376 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
1374 | 1377 |
1375 ASSERT_EQ(3u, frame.render_passes.size()); | 1378 ASSERT_EQ(3u, frame.render_passes.size()); |
1376 const QuadList& contrib_delegated_quad_list = | 1379 const QuadList& contrib_delegated_quad_list = |
1377 frame.render_passes[0]->quad_list; | 1380 frame.render_passes[0]->quad_list; |
1378 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1381 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
1379 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1382 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
1380 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1383 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
1381 const SharedQuadState* root_delegated_shared_quad_state = | 1384 const SharedQuadState* root_delegated_shared_quad_state = |
1382 root_delegated_quad_list.front()->shared_quad_state; | 1385 root_delegated_quad_list.front()->shared_quad_state; |
1383 | 1386 |
1384 // When the layer owns a surface, the quads don't need to be clipped | 1387 // 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 | 1388 // further than they already specify. If they aren't clipped, then their |
1386 // clip rect is ignored, and they are not set as clipped. | 1389 // clip rect is ignored, and they are not set as clipped. |
1387 EXPECT_FALSE(root_delegated_shared_quad_state->is_clipped); | 1390 EXPECT_FALSE(root_delegated_shared_quad_state->is_clipped); |
1388 | 1391 |
1389 host_impl_->DrawLayers(&frame); | 1392 host_impl_->DrawLayers(&frame); |
1390 host_impl_->DidDrawAllLayers(frame); | 1393 host_impl_->DidDrawAllLayers(frame); |
1391 } | 1394 } |
1392 | 1395 |
1393 TEST_F(DelegatedRendererLayerImplTestClip, QuadsClipped_LayerClipped_Surface) { | 1396 TEST_F(DelegatedRendererLayerImplTestClip, QuadsClipped_LayerClipped_Surface) { |
1394 root_delegated_render_pass_is_clipped_ = true; | 1397 root_delegated_render_pass_is_clipped_ = true; |
1395 clip_delegated_renderer_layer_ = true; | 1398 clip_delegated_renderer_layer_ = true; |
1396 SetUpTest(); | 1399 SetUpTest(); |
1397 | 1400 |
1398 delegated_renderer_layer_->SetHasRenderSurface(true); | 1401 delegated_renderer_layer_->SetHasRenderSurface(true); |
1399 | 1402 |
1400 LayerTreeHostImpl::FrameData frame; | 1403 LayerTreeHostImpl::FrameData frame; |
| 1404 host_impl_->active_tree()->BuildPropertyTreesForTesting(); |
1401 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 1405 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
1402 | 1406 |
1403 ASSERT_EQ(3u, frame.render_passes.size()); | 1407 ASSERT_EQ(3u, frame.render_passes.size()); |
1404 const QuadList& contrib_delegated_quad_list = | 1408 const QuadList& contrib_delegated_quad_list = |
1405 frame.render_passes[0]->quad_list; | 1409 frame.render_passes[0]->quad_list; |
1406 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); | 1410 ASSERT_EQ(2u, contrib_delegated_quad_list.size()); |
1407 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; | 1411 const QuadList& root_delegated_quad_list = frame.render_passes[1]->quad_list; |
1408 ASSERT_EQ(5u, root_delegated_quad_list.size()); | 1412 ASSERT_EQ(5u, root_delegated_quad_list.size()); |
1409 const SharedQuadState* root_delegated_shared_quad_state = | 1413 const SharedQuadState* root_delegated_shared_quad_state = |
1410 root_delegated_quad_list.front()->shared_quad_state; | 1414 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 = | 1678 scoped_ptr<DelegatedRendererLayerImpl> other_layer = |
1675 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); | 1679 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); |
1676 | 1680 |
1677 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); | 1681 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); |
1678 | 1682 |
1679 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); | 1683 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); |
1680 } | 1684 } |
1681 | 1685 |
1682 } // namespace | 1686 } // namespace |
1683 } // namespace cc | 1687 } // namespace cc |
OLD | NEW |