Changeset 123666 in webkit
- Timestamp:
- Jul 25, 2012, 3:07:50 PM (13 years ago)
- Location:
- trunk/Source
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r123665 r123666 1 2012-07-25 Dana Jansens <danakj@chromium.org> 2 3 [chromium] Move WebFilterOperations from RenderPassDrawQuad to RenderPass 4 https://bugs.webkit.org/show_bug.cgi?id=91885 5 6 Reviewed by Adrienne Walker. 7 8 We move the filter operations to CCRenderPass to avoid having 9 variable-length data in a WebCompositorQuad in order to serialize, 10 and also to avoid requiring a virtual destructor for the quad 11 classes. 12 13 The drawFrame method now takes a CCRenderPassIdHashMap in order 14 to connect RenderPass quads to their source RenderPass. 15 16 Covered by existing tests. 17 18 * platform/graphics/chromium/LayerRendererChromium.cpp: 19 (WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame): 20 (WebCore::LayerRendererChromium::drawFrame): 21 (WebCore::LayerRendererChromium::beginDrawingFrame): 22 (WebCore::LayerRendererChromium::drawBackgroundFilters): 23 (WebCore::LayerRendererChromium::drawRenderPassQuad): 24 * platform/graphics/chromium/LayerRendererChromium.h: 25 (LayerRendererChromium): 26 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: 27 (WebCore::CCLayerTreeHostImpl::calculateRenderPasses): 28 (WebCore::CCLayerTreeHostImpl::drawLayers): 29 * platform/graphics/chromium/cc/CCRenderPass.h: 30 (WebCore::CCRenderPass::filters): 31 (WebCore::CCRenderPass::setFilters): 32 (CCRenderPass): 33 (WebCore::CCRenderPass::backgroundFilters): 34 (WebCore::CCRenderPass::setBackgroundFilters): 35 * platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp: 36 (WebCore::CCRenderPassDrawQuad::create): 37 (WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad): 38 * platform/graphics/chromium/cc/CCRenderPassDrawQuad.h: 39 (CCRenderPassDrawQuad): 40 * platform/graphics/chromium/cc/CCRenderSurface.cpp: 41 (WebCore::CCRenderSurface::appendQuads): 42 * platform/graphics/chromium/cc/CCRenderer.h: 43 (CCRenderer): 44 1 45 2012-07-25 Mike Reed <reed@google.com> 2 46 -
trunk/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp
r123644 r123666 335 335 void LayerRendererChromium::decideRenderPassAllocationsForFrame(const CCRenderPassList& renderPassesInDrawOrder) 336 336 { 337 HashMap<int, const CCRenderPass*> passesInFrame;337 HashMap<int, const CCRenderPass*> renderPassesInFrame; 338 338 for (size_t i = 0; i < renderPassesInDrawOrder.size(); ++i) 339 passesInFrame.set(renderPassesInDrawOrder[i]->id(), renderPassesInDrawOrder[i]);339 renderPassesInFrame.set(renderPassesInDrawOrder[i]->id(), renderPassesInDrawOrder[i]); 340 340 341 341 Vector<int> passesToDelete; 342 342 HashMap<int, OwnPtr<CachedTexture> >::const_iterator passIterator; 343 343 for (passIterator = m_renderPassTextures.begin(); passIterator != m_renderPassTextures.end(); ++passIterator) { 344 const CCRenderPass* renderPassInFrame = passesInFrame.get(passIterator->first);344 const CCRenderPass* renderPassInFrame = renderPassesInFrame.get(passIterator->first); 345 345 if (!renderPassInFrame) { 346 346 passesToDelete.append(passIterator->first); … … 375 375 } 376 376 377 void LayerRendererChromium::drawFrame(const CCRenderPassList& renderPasses, const FloatRect& rootScissorRect) 378 { 379 const CCRenderPass* rootRenderPass = renderPasses.last(); 380 beginDrawingFrame(rootRenderPass); 381 382 for (size_t i = 0; i < renderPasses.size(); ++i) { 383 const CCRenderPass* renderPass = renderPasses[i]; 377 void LayerRendererChromium::drawFrame(const CCRenderPassList& renderPassesInDrawOrder, const CCRenderPassIdHashMap& renderPassesById, const FloatRect& rootScissorRect) 378 { 379 const CCRenderPass* rootRenderPass = renderPassesInDrawOrder.last(); 380 ASSERT(rootRenderPass); 381 382 m_defaultRenderPass = rootRenderPass; 383 m_renderPassesById = &renderPassesById; 384 385 beginDrawingFrame(); 386 387 for (size_t i = 0; i < renderPassesInDrawOrder.size(); ++i) { 388 const CCRenderPass* renderPass = renderPassesInDrawOrder[i]; 384 389 385 390 FloatRect rootScissorRectInCurrentSurface = renderPass->targetSurface()->computeRootScissorRectInCurrentSurface(rootScissorRect); … … 388 393 389 394 finishDrawingFrame(); 390 } 391 392 void LayerRendererChromium::beginDrawingFrame(const CCRenderPass* rootRenderPass) 395 396 m_defaultRenderPass = 0; 397 m_renderPassesById = 0; 398 } 399 400 void LayerRendererChromium::beginDrawingFrame() 393 401 { 394 402 // FIXME: Remove this once framebuffer is automatically recreated on first use 395 403 ensureFramebuffer(); 396 397 m_defaultRenderPass = rootRenderPass;398 ASSERT(m_defaultRenderPass);399 404 400 405 if (viewportSize().isEmpty()) … … 557 562 } 558 563 559 PassOwnPtr<CCScopedTexture> LayerRendererChromium::drawBackgroundFilters(const CCRenderPassDrawQuad* quad, const Web TransformationMatrix& contentsDeviceTransform)564 PassOwnPtr<CCScopedTexture> LayerRendererChromium::drawBackgroundFilters(const CCRenderPassDrawQuad* quad, const WebKit::WebFilterOperations& filters, const WebTransformationMatrix& contentsDeviceTransform) 560 565 { 561 566 // This method draws a background filter, which applies a filter to any pixels behind the quad and seen through its background. … … 575 580 // FIXME: When this algorithm changes, update CCLayerTreeHost::prioritizeTextures() accordingly. 576 581 577 if ( quad->backgroundFilters().isEmpty())582 if (filters.isEmpty()) 578 583 return nullptr; 579 584 … … 588 593 589 594 int top, right, bottom, left; 590 quad->backgroundFilters().getOutsets(top, right, bottom, left);595 filters.getOutsets(top, right, bottom, left); 591 596 deviceRect.move(-left, -top); 592 597 deviceRect.expand(left + right, top + bottom); … … 598 603 return nullptr; 599 604 600 SkBitmap filteredDeviceBackground = applyFilters(this, quad->backgroundFilters(), deviceBackgroundTexture.get());605 SkBitmap filteredDeviceBackground = applyFilters(this, filters, deviceBackgroundTexture.get()); 601 606 if (!filteredDeviceBackground.getTexture()) 602 607 return nullptr; … … 637 642 return; 638 643 644 const CCRenderPass* renderPass = m_renderPassesById->get(quad->renderPassId()); 645 ASSERT(renderPass); 646 if (!renderPass) 647 return; 648 639 649 WebTransformationMatrix renderMatrix = quad->quadTransform(); 640 650 renderMatrix.translate(0.5 * quad->quadRect().width() + quad->quadRect().x(), 0.5 * quad->quadRect().height() + quad->quadRect().y()); … … 647 657 return; 648 658 649 OwnPtr<CCScopedTexture> backgroundTexture = drawBackgroundFilters(quad, contentsDeviceTransform);659 OwnPtr<CCScopedTexture> backgroundTexture = drawBackgroundFilters(quad, renderPass->backgroundFilters(), contentsDeviceTransform); 650 660 651 661 // FIXME: Cache this value so that we don't have to do it for both the surface and its replica. 652 662 // Apply filters to the contents texture. 653 SkBitmap filterBitmap = applyFilters(this, quad->filters(), contentsTexture);663 SkBitmap filterBitmap = applyFilters(this, renderPass->filters(), contentsTexture); 654 664 OwnPtr<CCScopedLockResourceForRead> contentsResourceLock; 655 665 unsigned contentsTextureId = 0; -
trunk/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.h
r123644 r123666 81 81 virtual bool haveCachedResourcesForRenderPassId(int id) const OVERRIDE; 82 82 83 virtual void drawFrame(const CCRenderPassList&, const FloatRect& rootScissorRect) OVERRIDE;83 virtual void drawFrame(const CCRenderPassList&, const CCRenderPassIdHashMap&, const FloatRect& rootScissorRect) OVERRIDE; 84 84 85 85 // waits for rendering to finish … … 122 122 static void toGLMatrix(float*, const WebKit::WebTransformationMatrix&); 123 123 124 void beginDrawingFrame( const CCRenderPass* rootRenderPass);124 void beginDrawingFrame(); 125 125 void drawRenderPass(const CCRenderPass*, const FloatRect& framebufferDamageRect); 126 126 void finishDrawingFrame(); … … 129 129 void drawCheckerboardQuad(const CCCheckerboardDrawQuad*); 130 130 void drawDebugBorderQuad(const CCDebugBorderDrawQuad*); 131 PassOwnPtr<CCScopedTexture> drawBackgroundFilters(const CCRenderPassDrawQuad*, const WebKit::Web TransformationMatrix& deviceTransform);131 PassOwnPtr<CCScopedTexture> drawBackgroundFilters(const CCRenderPassDrawQuad*, const WebKit::WebFilterOperations&, const WebKit::WebTransformationMatrix& deviceTransform); 132 132 void drawRenderPassQuad(const CCRenderPassDrawQuad*); 133 133 void drawSolidColorQuad(const CCSolidColorDrawQuad*); … … 265 265 266 266 const CCRenderPass* m_defaultRenderPass; 267 const CCRenderPassIdHashMap* m_renderPassesById; 267 268 268 269 bool m_isViewportChanged; -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp
r123654 r123666 284 284 int renderPassId = renderSurfaceLayer->id(); 285 285 OwnPtr<CCRenderPass> pass = CCRenderPass::create(renderSurface, renderPassId); 286 pass->setFilters(renderSurfaceLayer->filters()); 287 pass->setBackgroundFilters(renderSurfaceLayer->backgroundFilters()); 288 286 289 surfacePassMap.add(renderSurface, pass.get()); 287 290 frame.renderPasses.append(pass.get()); … … 540 543 m_fpsCounter->markBeginningOfFrame(currentTime()); 541 544 542 m_layerRenderer->drawFrame(frame.renderPasses, m_rootScissorRect);545 m_layerRenderer->drawFrame(frame.renderPasses, frame.renderPassesById, m_rootScissorRect); 543 546 544 547 for (unsigned int i = 0; i < frame.renderPasses.size(); i++) -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCRenderPass.h
r123154 r123666 31 31 #include "cc/CCOcclusionTracker.h" 32 32 #include "cc/CCSharedQuadState.h" 33 #include <public/WebFilterOperations.h> 33 34 #include <wtf/HashMap.h> 34 35 #include <wtf/PassOwnPtr.h> … … 69 70 const IntRect& framebufferOutputRect() const { return m_framebufferOutputRect; } 70 71 72 const WebKit::WebFilterOperations& filters() const { return m_filters; } 73 void setFilters(const WebKit::WebFilterOperations& filters) { m_filters = filters; } 74 75 const WebKit::WebFilterOperations& backgroundFilters() const { return m_backgroundFilters; } 76 void setBackgroundFilters(const WebKit::WebFilterOperations& filters) { m_backgroundFilters = filters; } 77 71 78 bool hasTransparentBackground() const { return m_hasTransparentBackground; } 72 79 void setHasTransparentBackground(bool transparent) { m_hasTransparentBackground = transparent; } … … 84 91 bool m_hasTransparentBackground; 85 92 bool m_hasOcclusionFromOutsideTargetSurface; 93 WebKit::WebFilterOperations m_filters; 94 WebKit::WebFilterOperations m_backgroundFilters; 86 95 }; 87 96 -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp
r123065 r123666 32 32 namespace WebCore { 33 33 34 PassOwnPtr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::create(const WebKit::WebCompositorSharedQuadState* sharedQuadState, const IntRect& quadRect, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix& drawTransform, const WebKit::WebFilterOperations& filters, const WebKit::WebFilterOperations& backgroundFilters,CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame)34 PassOwnPtr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::create(const WebKit::WebCompositorSharedQuadState* sharedQuadState, const IntRect& quadRect, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix& drawTransform, const CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame) 35 35 { 36 return adoptPtr(new CCRenderPassDrawQuad(sharedQuadState, quadRect, renderPassId, isReplica, drawTransform, filters, backgroundFilters,maskResourceId, contentsChangedSinceLastFrame));36 return adoptPtr(new CCRenderPassDrawQuad(sharedQuadState, quadRect, renderPassId, isReplica, drawTransform, maskResourceId, contentsChangedSinceLastFrame)); 37 37 } 38 38 39 CCRenderPassDrawQuad::CCRenderPassDrawQuad(const WebKit::WebCompositorSharedQuadState* sharedQuadState, const IntRect& quadRect, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix& drawTransform, const WebKit::WebFilterOperations& filters, const WebKit::WebFilterOperations& backgroundFilters,CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame)39 CCRenderPassDrawQuad::CCRenderPassDrawQuad(const WebKit::WebCompositorSharedQuadState* sharedQuadState, const IntRect& quadRect, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix& drawTransform, CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame) 40 40 : WebCompositorQuad(sharedQuadState, WebCompositorQuad::RenderPass, quadRect) 41 41 , m_renderPassId(renderPassId) 42 42 , m_isReplica(isReplica) 43 43 , m_drawTransform(drawTransform) 44 , m_filters(filters)45 , m_backgroundFilters(backgroundFilters)46 44 , m_maskResourceId(maskResourceId) 47 45 , m_contentsChangedSinceLastFrame(contentsChangedSinceLastFrame) -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCRenderPassDrawQuad.h
r123065 r123666 29 29 #include "cc/CCResourceProvider.h" 30 30 #include <public/WebCompositorQuad.h> 31 #include <public/WebFilterOperations.h>32 31 #include <public/WebTransformationMatrix.h> 33 32 #include <wtf/PassOwnPtr.h> … … 40 39 WTF_MAKE_NONCOPYABLE(CCRenderPassDrawQuad); 41 40 public: 42 static PassOwnPtr<CCRenderPassDrawQuad> create(const WebKit::WebCompositorSharedQuadState*, const IntRect&, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix&, const WebKit::WebFilterOperations& filters, const WebKit::WebFilterOperations& backgroundFilters,CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame);41 static PassOwnPtr<CCRenderPassDrawQuad> create(const WebKit::WebCompositorSharedQuadState*, const IntRect&, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix&, CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame); 43 42 44 43 int renderPassId() const { return m_renderPassId; } … … 50 49 const WebKit::WebTransformationMatrix& drawTransform() const { return m_drawTransform; } 51 50 52 const WebKit::WebFilterOperations& filters() const { return m_filters; }53 const WebKit::WebFilterOperations& backgroundFilters() const { return m_backgroundFilters; }54 55 51 static const CCRenderPassDrawQuad* materialCast(const WebKit::WebCompositorQuad*); 56 52 private: 57 CCRenderPassDrawQuad(const WebKit::WebCompositorSharedQuadState*, const IntRect&, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix&, const WebKit::WebFilterOperations& filters, const WebKit::WebFilterOperations& backgroundFilters,CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame);53 CCRenderPassDrawQuad(const WebKit::WebCompositorSharedQuadState*, const IntRect&, int renderPassId, bool isReplica, const WebKit::WebTransformationMatrix&, CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame); 58 54 59 55 int m_renderPassId; 60 56 bool m_isReplica; 61 57 WebKit::WebTransformationMatrix m_drawTransform; 62 WebKit::WebFilterOperations m_filters;63 WebKit::WebFilterOperations m_backgroundFilters;64 58 CCResourceProvider::ResourceId m_maskResourceId; 65 59 IntRect m_contentsChangedSinceLastFrame; -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCRenderSurface.cpp
r123628 r123666 212 212 IntRect contentsChangedSinceLastFrame = contentsChanged() ? m_contentRect : IntRect(); 213 213 214 const WebKit::WebFilterOperations& filters = m_owningLayer->filters(); 215 const WebKit::WebFilterOperations& backgroundFilters = m_owningLayer->backgroundFilters(); 216 217 quadList.append(CCRenderPassDrawQuad::create(sharedQuadState, contentRect(), renderPassId, forReplica, drawTransform, filters, backgroundFilters, maskResourceId, contentsChangedSinceLastFrame)); 214 quadList.append(CCRenderPassDrawQuad::create(sharedQuadState, contentRect(), renderPassId, forReplica, drawTransform, maskResourceId, contentsChangedSinceLastFrame)); 218 215 } 219 216 -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCRenderer.h
r123644 r123666 81 81 virtual bool haveCachedResourcesForRenderPassId(int) const { return false; } 82 82 83 virtual void drawFrame(const CCRenderPassList&, const FloatRect& rootScissorRect) = 0;83 virtual void drawFrame(const CCRenderPassList&, const CCRenderPassIdHashMap&, const FloatRect& rootScissorRect) = 0; 84 84 85 85 // waits for rendering to finish -
trunk/Source/WebKit/chromium/ChangeLog
r123654 r123666 1 2012-07-25 Dana Jansens <danakj@chromium.org> 2 3 [chromium] Move WebFilterOperations from RenderPassDrawQuad to RenderPass 4 https://bugs.webkit.org/show_bug.cgi?id=91885 5 6 Reviewed by Adrienne Walker. 7 8 * tests/CCLayerTreeHostImplTest.cpp: 9 * tests/LayerRendererChromiumTest.cpp: 10 (FakeCCRendererClient::FakeCCRendererClient): 11 (FakeCCRendererClient::rootRenderPass): 12 (FakeCCRendererClient::renderPassesInDrawOrder): 13 (FakeCCRendererClient::renderPasses): 14 (FakeCCRendererClient): 15 (TEST_F): 16 (TEST): 17 1 18 2012-07-24 Shawn Singh <shawnsingh@chromium.org> 2 19 -
trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp
r123628 r123666 3578 3578 class CCTestRenderPass: public CCRenderPass { 3579 3579 public: 3580 static PassOwnPtr<CCRenderPass> create(CCRenderSurface* targetSurface, int id) { return adoptPtr(new CCTestRenderPass(targetSurface, id)); }3580 static PassOwnPtr<CCRenderPass> create(CCRenderSurface* renderSurface, int id) { return adoptPtr(new CCTestRenderPass(renderSurface, id)); } 3581 3581 3582 3582 void appendQuad(PassOwnPtr<CCDrawQuad> quad) { m_quadList.append(quad); } 3583 3583 3584 3584 protected: 3585 CCTestRenderPass(CCRenderSurface* targetSurface, int id) : CCRenderPass(targetSurface, id) { }3585 CCTestRenderPass(CCRenderSurface* renderSurface, int id) : CCRenderPass(renderSurface, id) { } 3586 3586 }; 3587 3587 … … 3699 3699 IntRect quadRect = IntRect(0, 0, 1, 1); 3700 3700 IntRect contentsChangedRect = contentsChanged ? quadRect : IntRect(); 3701 OwnPtr<CCRenderPassDrawQuad> quad = CCRenderPassDrawQuad::create(testData.sharedQuadState.get(), quadRect, newRenderPassId, isReplica, WebKit::WebTransformationMatrix(), WebKit::WebFilterOperations(), WebKit::WebFilterOperations(),1, contentsChangedRect);3701 OwnPtr<CCRenderPassDrawQuad> quad = CCRenderPassDrawQuad::create(testData.sharedQuadState.get(), quadRect, newRenderPassId, isReplica, WebKit::WebTransformationMatrix(), 1, contentsChangedRect); 3702 3702 static_cast<CCTestRenderPass*>(renderPass.get())->appendQuad(quad.release()); 3703 3703 } -
trunk/Source/WebKit/chromium/tests/LayerRendererChromiumTest.cpp
r123644 r123666 81 81 { 82 82 m_rootLayer->createRenderSurface(); 83 m_rootRenderPass = CCRenderPass::create(m_rootLayer->renderSurface(), m_rootLayer->id()); 84 m_renderPasses.append(m_rootRenderPass.get()); 83 OwnPtr<CCRenderPass> rootRenderPass = CCRenderPass::create(m_rootLayer->renderSurface(), m_rootLayer->id()); 84 m_renderPassesInDrawOrder.append(rootRenderPass.get()); 85 m_renderPasses.set(m_rootLayer->id(), rootRenderPass.release()); 85 86 } 86 87 … … 97 98 int setFullRootLayerDamageCount() const { return m_setFullRootLayerDamageCount; } 98 99 99 CCRenderPass* rootRenderPass() { return m_rootRenderPass.get(); } 100 const CCRenderPassList& renderPasses() { return m_renderPasses; } 100 CCRenderPass* rootRenderPass() { return m_renderPassesInDrawOrder.last(); } 101 const CCRenderPassList& renderPassesInDrawOrder() const { return m_renderPassesInDrawOrder; } 102 const CCRenderPassIdHashMap& renderPasses() const { return m_renderPasses; } 101 103 102 104 size_t memoryAllocationLimitBytes() const { return m_memoryAllocationLimitBytes; } … … 106 108 DebugScopedSetImplThread m_implThread; 107 109 OwnPtr<CCLayerImpl> m_rootLayer; 108 OwnPtr<CCRenderPass> m_rootRenderPass;109 CCRenderPass Listm_renderPasses;110 CCRenderPassList m_renderPassesInDrawOrder; 111 CCRenderPassIdHashMap m_renderPasses; 110 112 size_t m_memoryAllocationLimitBytes; 111 113 }; … … 223 225 224 226 m_layerRendererChromium.setVisible(true); 225 m_layerRendererChromium.drawFrame(m_mockClient.renderPasses (), FloatRect());227 m_layerRendererChromium.drawFrame(m_mockClient.renderPassesInDrawOrder(), m_mockClient.renderPasses(), FloatRect()); 226 228 EXPECT_FALSE(m_layerRendererChromium.isFramebufferDiscarded()); 227 229 … … 238 240 239 241 char pixels[4]; 240 m_layerRendererChromium.drawFrame(m_mockClient.renderPasses (), FloatRect());242 m_layerRendererChromium.drawFrame(m_mockClient.renderPassesInDrawOrder(), m_mockClient.renderPasses(), FloatRect()); 241 243 EXPECT_FALSE(m_layerRendererChromium.isFramebufferDiscarded()); 242 244 … … 419 421 EXPECT_TRUE(layerRendererChromium.initialize()); 420 422 421 layerRendererChromium.drawFrame(mockClient.renderPasses (), FloatRect());423 layerRendererChromium.drawFrame(mockClient.renderPassesInDrawOrder(), mockClient.renderPasses(), FloatRect()); 422 424 423 425 // On DEBUG builds, render passes with opaque background clear to blue to … … 442 444 EXPECT_TRUE(layerRendererChromium.initialize()); 443 445 444 layerRendererChromium.drawFrame(mockClient.renderPasses (), FloatRect());446 layerRendererChromium.drawFrame(mockClient.renderPassesInDrawOrder(), mockClient.renderPasses(), FloatRect()); 445 447 446 448 EXPECT_EQ(1, context->clearCount());
Note:
See TracChangeset
for help on using the changeset viewer.