Unmatched transparency layer begin/end on a filtered element with an opacity ancestor
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 14 Jan 2012 15:51:35 +0000 (15:51 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 14 Jan 2012 15:51:35 +0000 (15:51 +0000)
commit7cb92388c6b4ebc61ca2ec9552884a1838ebee62
treed0094acb021f06cb8e0e437a1483e3fb3624c700
parent59f89b57e3a974f7e11245aa1ad904ee60d5975c
Unmatched transparency layer begin/end on a filtered element with an opacity ancestor
https://bugs.webkit.org/show_bug.cgi?id=76329

Source/WebCore:

Reviewed by Dan Bernstein.

When doing a paint with painting disabled on the GraphicsContext, as we do
for updating control tints, or computing text rectangles on Find, do not
apply filter effects. This is both a performance gain, and fixes an issue
with mismatched begin/end transparency layers.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):

Reviewed by Dan Bernstein.

Manual test with a filtered element as a descendant of an element with
opacity. Doing a Find is necessary to exercise the test.

* ManualTests/filters/opacity-above-filter.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ChangeLog
ManualTests/filters/opacity-above-filter.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderLayer.cpp