[webkit-changes] [WebKit/WebKit] b6231f: `BackgroundPainter::paintFillLayers` should check ...

Ahmad Saleem noreply at github.com
Wed Mar 6 02:10:14 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b6231f750f4e26e71cdf3c0f1d2fbb81879c665b
      https://github.com/WebKit/WebKit/commit/b6231f750f4e26e71cdf3c0f1d2fbb81879c665b
  Author: Ahmad Saleem <ahmad.saleem792+github at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    A LayoutTests/fast/box-shadow/normal-box-shadow-with-background-image-expected-mismatch.html
    A LayoutTests/fast/box-shadow/normal-box-shadow-with-background-image.html
    M Source/WebCore/rendering/BackgroundPainter.cpp

  Log Message:
  -----------
  `BackgroundPainter::paintFillLayers` should check box-shadow when finding an opaque layer

https://bugs.webkit.org/show_bug.cgi?id=250882
rdar://problem/104722307

Reviewed by Antti Koivisto.

This patch aligns WebKit with Gecko / Firefox and Blink / Chromium.

Merge: https://chromium.googlesource.com/chromium/blink/+/a48f4540763c24adff42b9b77d719597f51482f6

BackgroundPainter::paintFillLayers has a fast path when a layer has an opaque background image.
If a layer has an opaque background image, basically the layer's background layers will be
hidden by the background image. So we can skip rendering the background layers.
However, if box-shadow is also specified, the box-shadow will be rendered in a skipped background layer.

This causes "box-shadow disappears". We cannot use the fast path if box-shadow is specified.

* Source/WebCore/rendering/BackgroundPainter.cpp:
(BackgroundPainter::paintFillLayers):
* LayoutTests/fast/box-shadow/normal-box-shadow-with-background-image.html: Add Test Case
* LayoutTests/fast/box-shadow/normal-box-shadow-with-background-image-expected-mismatch.html: Add Test Case Expectation Mismatch

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list