Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(419)

Side by Side Diff: cc/delegated_renderer_layer_impl_unittest.cc

Issue 11308153: Migrate most of cc/ from WebKit::WebTransformationMatrix to gfx::Transform (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Patch for landing Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « cc/damage_tracker_unittest.cc ('k') | cc/direct_renderer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/delegated_renderer_layer_impl.h" 5 #include "cc/delegated_renderer_layer_impl.h"
6 6
7 #include "cc/append_quads_data.h" 7 #include "cc/append_quads_data.h"
8 #include "cc/layer_tree_host_impl.h" 8 #include "cc/layer_tree_host_impl.h"
9 #include "cc/quad_sink.h" 9 #include "cc/quad_sink.h"
10 #include "cc/render_pass_draw_quad.h" 10 #include "cc/render_pass_draw_quad.h"
11 #include "cc/scoped_ptr_vector.h" 11 #include "cc/scoped_ptr_vector.h"
12 #include "cc/single_thread_proxy.h" 12 #include "cc/single_thread_proxy.h"
13 #include "cc/solid_color_draw_quad.h" 13 #include "cc/solid_color_draw_quad.h"
14 #include "cc/solid_color_layer_impl.h" 14 #include "cc/solid_color_layer_impl.h"
15 #include "cc/test/fake_proxy.h" 15 #include "cc/test/fake_proxy.h"
16 #include "cc/test/fake_web_compositor_output_surface.h" 16 #include "cc/test/fake_web_compositor_output_surface.h"
17 #include "cc/test/fake_web_graphics_context_3d.h" 17 #include "cc/test/fake_web_graphics_context_3d.h"
18 #include "cc/test/geometry_test_utils.h" 18 #include "cc/test/geometry_test_utils.h"
19 #include "cc/test/mock_quad_culler.h" 19 #include "cc/test/mock_quad_culler.h"
20 #include "cc/test/render_pass_test_common.h" 20 #include "cc/test/render_pass_test_common.h"
21 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
22 #include <public/WebTransformationMatrix.h> 22 #include "ui/gfx/transform.h"
23 23
24 using WebKit::FakeWebCompositorOutputSurface; 24 using WebKit::FakeWebCompositorOutputSurface;
25 using WebKit::FakeWebGraphicsContext3D; 25 using WebKit::FakeWebGraphicsContext3D;
26 using WebKit::WebTransformationMatrix;
27 26
28 using namespace WebKitTests; 27 using namespace WebKitTests;
29 28
30 namespace cc { 29 namespace cc {
31 namespace { 30 namespace {
32 31
33 class DelegatedRendererLayerImplTest : public testing::Test, public LayerTreeHos tImplClient { 32 class DelegatedRendererLayerImplTest : public testing::Test, public LayerTreeHos tImplClient {
34 public: 33 public:
35 DelegatedRendererLayerImplTest() 34 DelegatedRendererLayerImplTest()
36 : m_proxy(scoped_ptr<Thread>(NULL)) 35 : m_proxy(scoped_ptr<Thread>(NULL))
(...skipping 22 matching lines...) Expand all
59 scoped_ptr<GraphicsContext> createContext() 58 scoped_ptr<GraphicsContext> createContext()
60 { 59 {
61 return FakeWebCompositorOutputSurface::create(scoped_ptr<WebKit::WebGrap hicsContext3D>(new FakeWebGraphicsContext3D)).PassAs<GraphicsContext>(); 60 return FakeWebCompositorOutputSurface::create(scoped_ptr<WebKit::WebGrap hicsContext3D>(new FakeWebGraphicsContext3D)).PassAs<GraphicsContext>();
62 } 61 }
63 62
64 FakeProxy m_proxy; 63 FakeProxy m_proxy;
65 DebugScopedSetImplThreadAndMainThreadBlocked m_alwaysImplThreadAndMainThread Blocked; 64 DebugScopedSetImplThreadAndMainThreadBlocked m_alwaysImplThreadAndMainThread Blocked;
66 scoped_ptr<LayerTreeHostImpl> m_hostImpl; 65 scoped_ptr<LayerTreeHostImpl> m_hostImpl;
67 }; 66 };
68 67
69 static TestRenderPass* addRenderPass(ScopedPtrVector<RenderPass>& passList, Rend erPass::Id id, gfx::Rect outputRect, WebTransformationMatrix rootTransform) 68 static TestRenderPass* addRenderPass(ScopedPtrVector<RenderPass>& passList, Rend erPass::Id id, gfx::Rect outputRect, gfx::Transform rootTransform)
70 { 69 {
71 scoped_ptr<TestRenderPass> pass(TestRenderPass::Create()); 70 scoped_ptr<TestRenderPass> pass(TestRenderPass::Create());
72 pass->SetNew(id, outputRect, outputRect, rootTransform); 71 pass->SetNew(id, outputRect, outputRect, rootTransform);
73 TestRenderPass* saved = pass.get(); 72 TestRenderPass* saved = pass.get();
74 passList.append(pass.PassAs<RenderPass>()); 73 passList.append(pass.PassAs<RenderPass>());
75 return saved; 74 return saved;
76 } 75 }
77 76
78 static SolidColorDrawQuad* addQuad(TestRenderPass* pass, gfx::Rect rect, SkColor color) 77 static SolidColorDrawQuad* addQuad(TestRenderPass* pass, gfx::Rect rect, SkColor color)
79 { 78 {
80 MockQuadCuller quadSink(pass->quad_list, pass->shared_quad_state_list); 79 MockQuadCuller quadSink(pass->quad_list, pass->shared_quad_state_list);
81 AppendQuadsData data(pass->id); 80 AppendQuadsData data(pass->id);
82 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create()); 81 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create());
83 sharedState->SetAll(WebTransformationMatrix(), rect, rect, rect, false, 1); 82 sharedState->SetAll(gfx::Transform(), rect, rect, rect, false, 1);
84 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create(); 83 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
85 quad->SetNew(sharedState, rect, color); 84 quad->SetNew(sharedState, rect, color);
86 SolidColorDrawQuad* quadPtr = quad.get(); 85 SolidColorDrawQuad* quadPtr = quad.get();
87 quadSink.append(quad.PassAs<DrawQuad>(), data); 86 quadSink.append(quad.PassAs<DrawQuad>(), data);
88 return quadPtr; 87 return quadPtr;
89 } 88 }
90 89
91 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass) 90 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass)
92 { 91 {
93 MockQuadCuller quadSink(toPass->quad_list, toPass->shared_quad_state_list); 92 MockQuadCuller quadSink(toPass->quad_list, toPass->shared_quad_state_list);
94 AppendQuadsData data(toPass->id); 93 AppendQuadsData data(toPass->id);
95 gfx::Rect outputRect = contributingPass->output_rect; 94 gfx::Rect outputRect = contributingPass->output_rect;
96 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create()); 95 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create());
97 sharedState->SetAll(WebTransformationMatrix(), outputRect, outputRect, outpu tRect, false, 1); 96 sharedState->SetAll(gfx::Transform(), outputRect, outputRect, outputRect, fa lse, 1);
98 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create(); 97 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create();
99 quad->SetNew(sharedState, outputRect, contributingPass->id, false, 0, output Rect, 0, 0, 0, 0); 98 quad->SetNew(sharedState, outputRect, contributingPass->id, false, 0, output Rect, 0, 0, 0, 0);
100 quadSink.append(quad.PassAs<DrawQuad>(), data); 99 quadSink.append(quad.PassAs<DrawQuad>(), data);
101 } 100 }
102 101
103 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st { 102 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st {
104 public: 103 public:
105 DelegatedRendererLayerImplTestSimple() 104 DelegatedRendererLayerImplTestSimple()
106 : DelegatedRendererLayerImplTest() 105 : DelegatedRendererLayerImplTest()
107 { 106 {
(...skipping 14 matching lines...) Expand all
122 layerAfter->setPosition(gfx::Point(5, 5)); 121 layerAfter->setPosition(gfx::Point(5, 5));
123 layerAfter->setBounds(gfx::Size(15, 15)); 122 layerAfter->setBounds(gfx::Size(15, 15));
124 layerAfter->setContentBounds(gfx::Size(15, 15)); 123 layerAfter->setContentBounds(gfx::Size(15, 15));
125 layerAfter->setDrawsContent(true); 124 layerAfter->setDrawsContent(true);
126 layerAfter->setForceRenderSurface(true); 125 layerAfter->setForceRenderSurface(true);
127 126
128 delegatedRendererLayer->setPosition(gfx::Point(3, 3)); 127 delegatedRendererLayer->setPosition(gfx::Point(3, 3));
129 delegatedRendererLayer->setBounds(gfx::Size(10, 10)); 128 delegatedRendererLayer->setBounds(gfx::Size(10, 10));
130 delegatedRendererLayer->setContentBounds(gfx::Size(10, 10)); 129 delegatedRendererLayer->setContentBounds(gfx::Size(10, 10));
131 delegatedRendererLayer->setDrawsContent(true); 130 delegatedRendererLayer->setDrawsContent(true);
132 WebTransformationMatrix transform; 131 gfx::Transform transform;
133 transform.translate(1, 1); 132 transform.Translate(1, 1);
134 delegatedRendererLayer->setTransform(transform); 133 delegatedRendererLayer->setTransform(transform);
135 134
136 ScopedPtrVector<RenderPass> delegatedRenderPasses; 135 ScopedPtrVector<RenderPass> delegatedRenderPasses;
137 TestRenderPass* pass1 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 6), gfx::Rect(6, 6, 6, 6), WebTransformationMatrix()); 136 TestRenderPass* pass1 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 6), gfx::Rect(6, 6, 6, 6), gfx::Transform());
138 addQuad(pass1, gfx::Rect(0, 0, 6, 6), 33u); 137 addQuad(pass1, gfx::Rect(0, 0, 6, 6), 33u);
139 TestRenderPass* pass2 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 7), gfx::Rect(7, 7, 7, 7), WebTransformationMatrix()); 138 TestRenderPass* pass2 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 7), gfx::Rect(7, 7, 7, 7), gfx::Transform());
140 addQuad(pass2, gfx::Rect(0, 0, 7, 7), 22u); 139 addQuad(pass2, gfx::Rect(0, 0, 7, 7), 22u);
141 addRenderPassQuad(pass2, pass1); 140 addRenderPassQuad(pass2, pass1);
142 TestRenderPass* pass3 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 8), gfx::Rect(8, 8, 8, 8), WebTransformationMatrix()); 141 TestRenderPass* pass3 = addRenderPass(delegatedRenderPasses, RenderPass: :Id(9, 8), gfx::Rect(8, 8, 8, 8), gfx::Transform());
143 addRenderPassQuad(pass3, pass2); 142 addRenderPassQuad(pass3, pass2);
144 delegatedRendererLayer->setRenderPasses(delegatedRenderPasses); 143 delegatedRendererLayer->setRenderPasses(delegatedRenderPasses);
145 144
146 // The RenderPasses should be taken by the layer. 145 // The RenderPasses should be taken by the layer.
147 EXPECT_EQ(0u, delegatedRenderPasses.size()); 146 EXPECT_EQ(0u, delegatedRenderPasses.size());
148 147
149 m_rootLayerPtr = rootLayer.get(); 148 m_rootLayerPtr = rootLayer.get();
150 m_layerBeforePtr = layerBefore.get(); 149 m_layerBeforePtr = layerBefore.get();
151 m_layerAfterPtr = layerAfter.get(); 150 m_layerAfterPtr = layerAfter.get();
152 m_delegatedRendererLayerPtr = delegatedRendererLayer.get(); 151 m_delegatedRendererLayerPtr = delegatedRendererLayer.get();
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 LayerTreeHostImpl::FrameData frame; 252 LayerTreeHostImpl::FrameData frame;
254 EXPECT_TRUE(m_hostImpl->prepareToDraw(frame)); 253 EXPECT_TRUE(m_hostImpl->prepareToDraw(frame));
255 m_hostImpl->drawLayers(frame); 254 m_hostImpl->drawLayers(frame);
256 m_hostImpl->didDrawAllLayers(frame); 255 m_hostImpl->didDrawAllLayers(frame);
257 256
258 // Each non-DelegatedRendererLayer added one RenderPass. The DelegatedRender erLayer added two contributing passes. 257 // Each non-DelegatedRendererLayer added one RenderPass. The DelegatedRender erLayer added two contributing passes.
259 ASSERT_EQ(5u, frame.renderPasses.size()); 258 ASSERT_EQ(5u, frame.renderPasses.size());
260 259
261 // The DelegatedRendererLayer is at position 3,3 compared to its target, and has a translation transform of 1,1. 260 // The DelegatedRendererLayer is at position 3,3 compared to its target, and has a translation transform of 1,1.
262 // So its root RenderPass' quads should all be transformed by that combined amount. 261 // So its root RenderPass' quads should all be transformed by that combined amount.
263 WebTransformationMatrix transform; 262 gfx::Transform transform;
264 transform.translate(4, 4); 263 transform.Translate(4, 4);
265 EXPECT_TRANSFORMATION_MATRIX_EQ(transform, frame.renderPasses[3]->quad_list[ 0]->quadTransform()); 264 EXPECT_TRANSFORMATION_MATRIX_EQ(transform, frame.renderPasses[3]->quad_list[ 0]->quadTransform());
266 265
267 // Quads from non-root RenderPasses should not be shifted though. 266 // Quads from non-root RenderPasses should not be shifted though.
268 ASSERT_EQ(2u, frame.renderPasses[2]->quad_list.size()); 267 ASSERT_EQ(2u, frame.renderPasses[2]->quad_list.size());
269 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[2]->quad_list[0]->quadTransform()); 268 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[2]->qua d_list[0]->quadTransform());
270 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[2]->quad_list[1]->quadTransform()); 269 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[2]->qua d_list[1]->quadTransform());
271 ASSERT_EQ(1u, frame.renderPasses[1]->quad_list.size()); 270 ASSERT_EQ(1u, frame.renderPasses[1]->quad_list.size());
272 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[1]->quad_list[0]->quadTransform()); 271 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[1]->qua d_list[0]->quadTransform());
273 } 272 }
274 273
275 class DelegatedRendererLayerImplTestOwnSurface : public DelegatedRendererLayerIm plTestSimple { 274 class DelegatedRendererLayerImplTestOwnSurface : public DelegatedRendererLayerIm plTestSimple {
276 public: 275 public:
277 DelegatedRendererLayerImplTestOwnSurface() 276 DelegatedRendererLayerImplTestOwnSurface()
278 : DelegatedRendererLayerImplTestSimple() 277 : DelegatedRendererLayerImplTestSimple()
279 { 278 {
280 m_delegatedRendererLayerPtr->setForceRenderSurface(true); 279 m_delegatedRendererLayerPtr->setForceRenderSurface(true);
281 } 280 }
282 }; 281 };
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
366 LayerTreeHostImpl::FrameData frame; 365 LayerTreeHostImpl::FrameData frame;
367 EXPECT_TRUE(m_hostImpl->prepareToDraw(frame)); 366 EXPECT_TRUE(m_hostImpl->prepareToDraw(frame));
368 m_hostImpl->drawLayers(frame); 367 m_hostImpl->drawLayers(frame);
369 m_hostImpl->didDrawAllLayers(frame); 368 m_hostImpl->didDrawAllLayers(frame);
370 369
371 // Each non-DelegatedRendererLayer added one RenderPass. The DelegatedRender erLayer added two contributing passes and its owned surface added one pass. 370 // Each non-DelegatedRendererLayer added one RenderPass. The DelegatedRender erLayer added two contributing passes and its owned surface added one pass.
372 ASSERT_EQ(6u, frame.renderPasses.size()); 371 ASSERT_EQ(6u, frame.renderPasses.size());
373 372
374 // Because the DelegatedRendererLayer owns a RenderSurfaceImpl, its root Ren derPass' quads do not need to be 373 // Because the DelegatedRendererLayer owns a RenderSurfaceImpl, its root Ren derPass' quads do not need to be
375 // modified at all. 374 // modified at all.
376 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[3]->quad_list[0]->quadTransform()); 375 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[3]->qua d_list[0]->quadTransform());
377 376
378 // Quads from non-root RenderPasses should not be shifted though. 377 // Quads from non-root RenderPasses should not be shifted though.
379 ASSERT_EQ(2u, frame.renderPasses[2]->quad_list.size()); 378 ASSERT_EQ(2u, frame.renderPasses[2]->quad_list.size());
380 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[2]->quad_list[0]->quadTransform()); 379 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[2]->qua d_list[0]->quadTransform());
381 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[2]->quad_list[1]->quadTransform()); 380 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[2]->qua d_list[1]->quadTransform());
382 ASSERT_EQ(1u, frame.renderPasses[1]->quad_list.size()); 381 ASSERT_EQ(1u, frame.renderPasses[1]->quad_list.size());
383 EXPECT_TRANSFORMATION_MATRIX_EQ(WebTransformationMatrix(), frame.renderPasse s[1]->quad_list[0]->quadTransform()); 382 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), frame.renderPasses[1]->qua d_list[0]->quadTransform());
384 } 383 }
385 384
386 class DelegatedRendererLayerImplTestSharedData : public DelegatedRendererLayerIm plTest { 385 class DelegatedRendererLayerImplTestSharedData : public DelegatedRendererLayerIm plTest {
387 public: 386 public:
388 DelegatedRendererLayerImplTestSharedData() 387 DelegatedRendererLayerImplTestSharedData()
389 : DelegatedRendererLayerImplTest() 388 : DelegatedRendererLayerImplTest()
390 { 389 {
391 scoped_ptr<LayerImpl> rootLayer = LayerImpl::create(1); 390 scoped_ptr<LayerImpl> rootLayer = LayerImpl::create(1);
392 scoped_ptr<DelegatedRendererLayerImpl> delegatedRendererLayer = Delegate dRendererLayerImpl::create(2); 391 scoped_ptr<DelegatedRendererLayerImpl> delegatedRendererLayer = Delegate dRendererLayerImpl::create(2);
393 392
394 m_hostImpl->setViewportSize(gfx::Size(100, 100), gfx::Size(100, 100)); 393 m_hostImpl->setViewportSize(gfx::Size(100, 100), gfx::Size(100, 100));
395 rootLayer->setBounds(gfx::Size(100, 100)); 394 rootLayer->setBounds(gfx::Size(100, 100));
396 395
397 delegatedRendererLayer->setPosition(gfx::Point(20, 20)); 396 delegatedRendererLayer->setPosition(gfx::Point(20, 20));
398 delegatedRendererLayer->setBounds(gfx::Size(20, 20)); 397 delegatedRendererLayer->setBounds(gfx::Size(20, 20));
399 delegatedRendererLayer->setContentBounds(gfx::Size(20, 20)); 398 delegatedRendererLayer->setContentBounds(gfx::Size(20, 20));
400 delegatedRendererLayer->setDrawsContent(true); 399 delegatedRendererLayer->setDrawsContent(true);
401 WebTransformationMatrix transform; 400 gfx::Transform transform;
402 transform.translate(10, 10); 401 transform.Translate(10, 10);
403 delegatedRendererLayer->setTransform(transform); 402 delegatedRendererLayer->setTransform(transform);
404 403
405 ScopedPtrVector<RenderPass> delegatedRenderPasses; 404 ScopedPtrVector<RenderPass> delegatedRenderPasses;
406 gfx::Rect passRect(0, 0, 50, 50); 405 gfx::Rect passRect(0, 0, 50, 50);
407 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, WebTransformationMatrix()); 406 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, gfx::Transform());
408 MockQuadCuller quadSink(pass->quad_list, pass->shared_quad_state_list); 407 MockQuadCuller quadSink(pass->quad_list, pass->shared_quad_state_list);
409 AppendQuadsData data(pass->id); 408 AppendQuadsData data(pass->id);
410 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::Create()); 409 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::Create());
411 sharedState->SetAll(WebTransformationMatrix(), passRect, passRect, passR ect, false, 1); 410 sharedState->SetAll(gfx::Transform(), passRect, passRect, passRect, fals e, 1);
412 scoped_ptr<SolidColorDrawQuad> colorQuad; 411 scoped_ptr<SolidColorDrawQuad> colorQuad;
413 412
414 colorQuad = SolidColorDrawQuad::Create(); 413 colorQuad = SolidColorDrawQuad::Create();
415 colorQuad->SetNew(sharedState, gfx::Rect(0, 0, 10, 10), 1u); 414 colorQuad->SetNew(sharedState, gfx::Rect(0, 0, 10, 10), 1u);
416 quadSink.append(colorQuad.PassAs<DrawQuad>(), data); 415 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
417 416
418 colorQuad = SolidColorDrawQuad::Create(); 417 colorQuad = SolidColorDrawQuad::Create();
419 colorQuad->SetNew(sharedState, gfx::Rect(0, 10, 10, 10), 2u); 418 colorQuad->SetNew(sharedState, gfx::Rect(0, 10, 10, 10), 2u);
420 quadSink.append(colorQuad.PassAs<DrawQuad>(), data); 419 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
421 420
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 ASSERT_EQ(4u, quadList.size()); 459 ASSERT_EQ(4u, quadList.size());
461 460
462 // All quads should share the same state. 461 // All quads should share the same state.
463 const SharedQuadState* sharedState = quadList[0]->shared_quad_state; 462 const SharedQuadState* sharedState = quadList[0]->shared_quad_state;
464 EXPECT_EQ(sharedState, quadList[1]->shared_quad_state); 463 EXPECT_EQ(sharedState, quadList[1]->shared_quad_state);
465 EXPECT_EQ(sharedState, quadList[2]->shared_quad_state); 464 EXPECT_EQ(sharedState, quadList[2]->shared_quad_state);
466 EXPECT_EQ(sharedState, quadList[3]->shared_quad_state); 465 EXPECT_EQ(sharedState, quadList[3]->shared_quad_state);
467 466
468 // The state should be transformed only once. 467 // The state should be transformed only once.
469 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clipped_rect_in_targe t); 468 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clipped_rect_in_targe t);
470 WebTransformationMatrix expected; 469 gfx::Transform expected;
471 expected.translate(30, 30); 470 expected.Translate(30, 30);
472 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->content_to_target_tra nsform); 471 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->content_to_target_tra nsform);
473 } 472 }
474 473
475 } // namespace 474 } // namespace
476 } // namespace cc 475 } // namespace cc
OLDNEW
« no previous file with comments | « cc/damage_tracker_unittest.cc ('k') | cc/direct_renderer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698