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