Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bd9c00a97c47881bb539c7ad4935f3065c61c8c3
      
https://github.com/WebKit/WebKit/commit/bd9c00a97c47881bb539c7ad4935f3065c61c8c3
  Author: Wenson Hsieh <[email protected]>
  Date:   2025-07-08 (Tue, 08 Jul 2025)

  Changed paths:
    M 
LayoutTests/fast/page-color-sampling/no-resampling-after-scrolling-expected.txt
    M LayoutTests/fast/page-color-sampling/no-resampling-after-scrolling.html
    M LayoutTests/resources/ui-helper.js
    M Source/WebCore/page/LocalFrameView.cpp

  Log Message:
  -----------
  [Liquid Glass] Prevent color resampling when switching tabs back to a page 
where the user had scrolled
https://bugs.webkit.org/show_bug.cgi?id=295603

Reviewed by Abrar Rahman Protyasha.

Fix a remaining edge case as a followup to 297118@main — when switching away 
from a tab and then
switching back, we may attempt to resample the top fixed element until the user 
scrolls again, due
to the fact that the last user scroll state is currently reset along with
`m_wasEverScrolledExplicitlyByUser` under `LocalFrameView::show()` (i.e., when 
a view is reinserted
into the view hierarchy).

Avoid resampling in this scenario as well, by not clearing out 
`m_wasEverScrolledExplicitlyByUser`
when the frame view is shown.

* 
LayoutTests/fast/page-color-sampling/no-resampling-after-scrolling-expected.txt:
* LayoutTests/fast/page-color-sampling/no-resampling-after-scrolling.html:

Augment an existing test to exercise this scenario, by removing and reinserting 
the web view into
the window, scrolling, and then verifying that the sampled top color remains 
null.

* LayoutTests/resources/ui-helper.js:
(window.UIHelper.removeViewFromWindow.const.scriptToRun):
(window.UIHelper.removeViewFromWindow):
(window.UIHelper.addViewToWindow.const.scriptToRun):
(window.UIHelper.addViewToWindow):

Make these testing helpers usable on macOS without causing a timeout, by 
invoking `uiScriptComplete`
afterwards. See the FIXME in `UIScriptControllerCocoa::removeViewFromWindow` 
for more details.

* Source/WebCore/page/LocalFrameView.cpp:
(WebCore::LocalFrameView::show):

Canonical link: https://commits.webkit.org/297142@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