Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fc70d62e654cd0d5654ce0273c36f7e339146df6
      
https://github.com/WebKit/WebKit/commit/fc70d62e654cd0d5654ce0273c36f7e339146df6
  Author: Wenson Hsieh <[email protected]>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M 
LayoutTests/fast/page-color-sampling/color-sampling-fixed-popup-expected.txt
    M LayoutTests/fast/page-color-sampling/color-sampling-fixed-popup.html
    A 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-modal-popup-expected.txt
    A 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-modal-popup.html
    M 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-transparent-pointer-events-none-container-expected.txt
    M 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-transparent-pointer-events-none-container.html
    M Source/WebCore/page/LocalFrameView.cpp

  Log Message:
  -----------
  [Page Color Sampling] Top sampled color changes after focusing search field 
in Confluence
https://bugs.webkit.org/show_bug.cgi?id=293924
rdar://151744926

Reviewed by Abrar Rahman Protyasha.

Make more adjustments to the color sampling heuristic, to avoid applying fixed 
color extension to
containers docked to the top/bottom or left/right edges, if they also cover 
most of the left/right
or top/bottom edges (respectively). Importantly, this allows us to avoid 
thrashing sampled color in
the case where a popup that obscures the entire viewport is temporarily shown 
(in the case of
Confluence, in response to the user focusing a search field).

By avoiding detection for these containers, we simply fall back to the 
previously sampled result, as
long as those previously sampled elements are still in the render tree (see 
295099@main).

* LayoutTests/fast/page-color-sampling/color-sampling-fixed-popup-expected.txt:
* LayoutTests/fast/page-color-sampling/color-sampling-fixed-popup.html:

Adjust this layout test by making turning the popup into a (short) banner that 
doesn't cover the
whole viewport, since this now causes the sampling heuristic to avoid detecting 
it as a candidate
for color extension.

* 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-modal-popup-expected.txt:
 Added.
* LayoutTests/fast/page-color-sampling/color-sampling-ignores-modal-popup.html: 
Added.

Add a new layout test to verify that sampled fixed-position container colors 
remain stable after
showing a modal popup that covers the page.

* 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-transparent-pointer-events-none-container-expected.txt:
* 
LayoutTests/fast/page-color-sampling/color-sampling-ignores-transparent-pointer-events-none-container.html:

Adjust this layout test in the same way (see `color-sampling-fixed-popup.html` 
above).

* Source/WebCore/page/LocalFrameView.cpp:
(WebCore::LocalFrameView::fixedContainerEdges const):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to