[webkit-reviews] review granted: [Bug 78073] [Chromium] Fix opaque tracking for box shadows and non-composited child elements : [Attachment 126092] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Feb 8 14:06:09 PST 2012
Stephen White <senorblanco at chromium.org> has granted Dana Jansens
<danakj at chromium.org>'s request for review:
Bug 78073: [Chromium] Fix opaque tracking for box shadows and non-composited
child elements
https://bugs.webkit.org/show_bug.cgi?id=78073
Attachment 126092: Patch
https://bugs.webkit.org/attachment.cgi?id=126092&action=review
------- Additional Comments from Stephen White <senorblanco at chromium.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=126092&action=review
Looks good. r=me
> Source/WebCore/platform/graphics/skia/OpaqueRegionSkia.cpp:146
> + if (paint.getLooper())
> + return false;
> + if (paint.getImageFilter())
> + return false;
> + if (paint.getMaskFilter())
> + return false;
> + SkColorFilter* colorFilter = paint.getColorFilter();
> + if (colorFilter && !(colorFilter->getFlags() &
SkColorFilter::kAlphaUnchanged_Flag))
> + return false;
You might want to sync with Justin Novosad. He's been implementing a similar
function for the deferred canvas case. It's in isPaintOpaque() in
SkDeferredCanvas.cpp. His version errs on the side of transparent, that is, it
only returns true if he's certain that the paint is opaque. If those semantics
work for you, it would be cool to unify these two functions as a public API in
skia in the future.
More information about the webkit-reviews
mailing list