Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overlay regions do not correctly handle sticky positioned scrolling nodes #3383

Commits on Aug 19, 2022

  1. Overlay regions do not correctly handle sticky positioned scrolling n…

    …odes
    
    https://bugs.webkit.org/show_bug.cgi?id=243973
    <rdar://98640826>
    
    Reviewed by Tim Horton.
    
    Sticky node regions should be added to the overlay regions but their rectangles
    can move during scrolling. Also fixed or sticky rectangles can change
    during page zoom.
    
    To support this, instead of storing a list of rectangles, store a list of
    layer IDs with event regions and then compute the rectangles.
    
    * Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
    (addOverlayEventRegions):
    Store only the layer ID.
    
    (-[WKWebView _updateOverlayRegions:destroyedLayers:]):
    Recompute the rectangles from the current frames of the nodes whenever the layer
    properties change. Scrolling and page zoom where this would be impacted both
    trigger a change in layer properties.
    
    * Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h:
    Renamed function.
    
    * Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeHost.h:
    (WebKit::RemoteLayerTreeHost::overlayRegionIDs const):
    (WebKit::RemoteLayerTreeHost::updateOverlayRegionIDs):
    Renamed.
    
    * Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
    (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
    Call renamed function.
    
    Canonical link: https://commits.webkit.org/253603@main
    mwyrzykowski authored and hortont424 committed Aug 19, 2022
    Configuration menu
    Copy the full SHA
    649ae3d View commit details
    Browse the repository at this point in the history