[chromium] Use region reported painted opaque for draw culling
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 19 Jan 2012 01:42:30 +0000 (01:42 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 19 Jan 2012 01:42:30 +0000 (01:42 +0000)
commit14d8f7cb6e712a4c4415df64934f3d875d97e4f5
treec0744ea0353d6b5ba56fa99213526a1fc4d4946e
parentc1a36aa69cdd96de45c0517014100786f1633f24
[chromium] Use region reported painted opaque for draw culling
https://bugs.webkit.org/show_bug.cgi?id=76015

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in CCQuadCullerTest.cpp and CCTiledLayerImplTest.cpp

* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):
* platform/graphics/chromium/cc/CCDrawQuad.h:
(WebCore::CCDrawQuad::opaqueRect):
(WebCore::CCDrawQuad::needsBlending):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::CCQuadCuller::cullOccludedQuads):
* platform/graphics/chromium/cc/CCTileDrawQuad.cpp:
(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):
* platform/graphics/chromium/cc/CCTileDrawQuad.h:
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::DrawableTile::opaqueRect):
(WebCore::DrawableTile::setOpaqueRect):
(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::pushTileProperties):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:

Source/WebKit/chromium:

* tests/CCQuadCullerTest.cpp:
(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):
(WebCore::TEST):
* tests/CCTiledLayerImplTest.cpp:
(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105366 268f45cc-cd09-0410-ab3c-d52691b4dbfc
12 files changed:
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp
Source/WebCore/platform/graphics/chromium/cc/CCDrawQuad.h
Source/WebCore/platform/graphics/chromium/cc/CCQuadCuller.cpp
Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp
Source/WebCore/platform/graphics/chromium/cc/CCTileDrawQuad.cpp
Source/WebCore/platform/graphics/chromium/cc/CCTileDrawQuad.h
Source/WebCore/platform/graphics/chromium/cc/CCTiledLayerImpl.cpp
Source/WebCore/platform/graphics/chromium/cc/CCTiledLayerImpl.h
Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/tests/CCQuadCullerTest.cpp
Source/WebKit/chromium/tests/CCTiledLayerImplTest.cpp