Incomplete repaint on twitter.com when replying to a tweet
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 29 May 2012 20:49:15 +0000 (20:49 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 29 May 2012 20:49:15 +0000 (20:49 +0000)
commit67431dd440944de73f10e0a267d564941a5c9c80
treef1a0bb902031b277c144d0b9e670a245accefe69
parent59b1c02914760f61c71d579ff644112d47e8e32a
Incomplete repaint on twitter.com when replying to a tweet
https://bugs.webkit.org/show_bug.cgi?id=87553

Reviewed by Dean Jackson.

Manual test that adds a transform to a layer, forcing that
layer to gain backing store.

* ManualTests/compositing/requires-backing-change.html: Added.

Source/WebCore:

Reviewed by Dean Jackson.

Style changes can cause a compositing layer to change between
requiring its own backing store or not, e.g. with the addition
or removal of a transform.

When that happens, we need to repaint the ancesetor layer that
this layer was, or will be drawing into.

Factored some code out of layerWillBeRemoved() to be able to
also call it from setRequiresOwnBackingStore().

New manual test, ManualTests/compositing/requires-backing-change.html.
I was not able to get an automated pixel test to work.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::setRequiresOwnBackingStore):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingLayers): Remove trailing whitespace.
(WebCore::RenderLayerCompositor::repaintInCompositedAncestor):
(WebCore::RenderLayerCompositor::layerWillBeRemoved):
* rendering/RenderLayerCompositor.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@118828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ChangeLog
ManualTests/compositing/requires-backing-change.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderLayerBacking.cpp
Source/WebCore/rendering/RenderLayerCompositor.cpp
Source/WebCore/rendering/RenderLayerCompositor.h