Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0a5b0aa9a91f97e7a2e2d4e308356b7f7b3520d3
      
https://github.com/WebKit/WebKit/commit/0a5b0aa9a91f97e7a2e2d4e308356b7f7b3520d3
  Author: Wenson Hsieh <[email protected]>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm

  Log Message:
  -----------
  Dynamic viewport expansion heuristic does not work on bigfishgames.com
https://bugs.webkit.org/show_bug.cgi?id=277113
rdar://128572358

Reviewed by Richard Robinson.

Adjust the viewport height expansion heuristic once again, so that we trigger 
an update whenever a
fixed-position container finishes animating. Additionally, add logic to 
throttle these updates to
a maximum of one every ~200 ms, to prevent websites with constantly-running 
animations from either
(1) indefinitely deferring updates, or (2) triggering constant and frequent 
updates.

* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
(WebKit::WebPage::didAddOrRemoveViewportConstrainedObjects):

Move this logic into a common helper method, 
`scheduleLayoutViewportHeightExpansionUpdate`.

* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::completeSyntheticClick):

Also, schedule an update whenever synthetic click events are dispatched (i.e. 
user taps the screen).

(WebKit::WebPage::scheduleLayoutViewportHeightExpansionUpdate):
(WebKit::WebPage::updateLayoutViewportHeightExpansionTimerFired):
(WebKit::WebPage::animationDidFinishForElement):
(WebKit::WebPage::scheduleEditorStateUpdateAfterAnimationIfNeeded):

Pull this existing logic for scheduling an EditorState update after completing 
an animation out into
a separate helper method.

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