[webkit-reviews] review denied: [Bug 82521] [CSS Filters] Trigger a repaint on elements with changed filter : [Attachment 134457] Patch V1

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Mar 28 20:22:47 PDT 2012


Dean Jackson <dino at apple.com> has denied Dean Jackson <dino at apple.com>'s
request for review:
Bug 82521: [CSS Filters] Trigger a repaint on elements with changed filter
https://bugs.webkit.org/show_bug.cgi?id=82521

Attachment 134457: Patch V1
https://bugs.webkit.org/attachment.cgi?id=134457&action=review

------- Additional Comments from Dean Jackson <dino at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=134457&action=review


This is almost the same as my patch (I think better because mine had an error).
I have one question though. Since you're testing layer->paintsWithFilters()
won't that mean that if a filter property is completely added or removed you
won't get marked as having a difference? I managed to get it into this state by
toggling between none and blur(2px) for example.

Actually, another question is whether there is a reason for moving the test in
::diff?

> Source/WebCore/rendering/RenderObject.cpp:1729
> +#if ENABLE(CSS_FILTERS)
> +    if ((contextSensitiveProperties & ContextSensitivePropertyFilter) &&
hasLayer()) {
> +	   RenderLayer* layer = toRenderBoxModelObject(this)->layer();
> +	   if (layer->paintsWithFilters())
> +	       diff = StyleDifferenceRepaintLayer;
> +	   else if ((diff < StyleDifferenceRecompositeLayer) &&
layer->isComposited())
> +	       diff = StyleDifferenceRecompositeLayer;
> +    }
> +#endif

We don't need the #if guards here. ContextSensitivePropertyFilter won't be set
if ENABLE_CSS_FILTERS is off.


More information about the webkit-reviews mailing list