[chromium] Push culled tiles that are prepainted
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Mar 2012 03:10:45 +0000 (03:10 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Mar 2012 03:10:45 +0000 (03:10 +0000)
commite6c8c205bad7c3c87d1d18a6fbae960db2800c26
tree4bf25250782286c869aab30e35e65459a6043018
parent45ddb2fd2259ee038097d11d8abddabcc299b369
[chromium] Push culled tiles that are prepainted
https://bugs.webkit.org/show_bug.cgi?id=81552

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-19
Reviewed by Adrienne Walker.

Source/WebCore:

If a tile was culled during paint, but then prepainted in the following
idle paint pass, it was still marked as culled (and thus dirty) and not
pushed to the impl side.

Renames tile->m_updateCulled to tile->m_updated. This value is true if
the tile is updated any time during a commit, and remains false if it
is culled every time the layer is painted.

Unit test: TiledLayerChromiumTest.pushIdlePaintedOccludedTiles

* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::UpdatableTile::isDirtyForCurrentFrame):
(UpdatableTile):
(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::updateCompositorResources):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):
(WebCore::TiledLayerChromium::resetUpdateState):

Source/WebKit/chromium:

* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):
(WTF):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@111335 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp
Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/tests/TiledLayerChromiumTest.cpp