[webkit-changes] [WebKit/WebKit] a0b927: REGRESSION (249229 at main): CSS filter does not upda...

Simon Fraser noreply at github.com
Mon Nov 21 16:45:22 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a0b92719854d2bb1e7cdf41c3d4cedc514ba3a3e
      https://github.com/WebKit/WebKit/commit/a0b92719854d2bb1e7cdf41c3d4cedc514ba3a3e
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2022-11-21 (Mon, 21 Nov 2022)

  Changed paths:
    A LayoutTests/css3/filters/change-filter-style-expected.html
    A LayoutTests/css3/filters/change-filter-style.html
    M Source/WebCore/platform/graphics/filters/FilterEffect.cpp
    M Source/WebCore/platform/graphics/filters/FilterFunction.cpp
    M Source/WebCore/platform/graphics/filters/FilterFunction.h
    M Source/WebCore/rendering/CSSFilter.cpp
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayer.h

  Log Message:
  -----------
  REGRESSION (249229 at main): CSS filter does not update on hover
https://bugs.webkit.org/show_bug.cgi?id=247233
rdar://101836748

Reviewed by Darin Adler.

249229 at main made it so that we don't recreate CSSFilter on every paint,
but there was no code to update the filters when style changed.

So have `RenderLayer::updateFiltersAfterStyleChange()` clear the filters
when filter style changes; we'll recreate them on the next paint.

Also improve some logging output that helped when debugging this.

* LayoutTests/css3/filters/change-filter-style-expected.html: Added.
* LayoutTests/css3/filters/change-filter-style.html: Added.
* Source/WebCore/platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::apply):
* Source/WebCore/platform/graphics/filters/FilterFunction.cpp:
(WebCore::operator<<):
* Source/WebCore/platform/graphics/filters/FilterFunction.h:
* Source/WebCore/rendering/CSSFilter.cpp:
(WebCore::CSSFilter::create):
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayer.h:

Canonical link: https://commits.webkit.org/256920@main




More information about the webkit-changes mailing list