[webkit-changes] [WebKit/WebKit] d8afa9: Overlay regions should snap to the scrollview's edges

Etienne Segonzac noreply at github.com
Fri Feb 9 00:24:20 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d8afa9c525866764a23c33a7a7fdd641c53b1a4c
      https://github.com/WebKit/WebKit/commit/d8afa9c525866764a23c33a7a7fdd641c53b1a4c
  Author: Etienne Segonzac <sgz at apple.com>
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
    M LayoutTests/overlay-region/full-page-dynamic-expected.txt
    M LayoutTests/overlay-region/full-page-expected.txt
    M LayoutTests/overlay-region/full-page-overflow-expected.txt
    M LayoutTests/overlay-region/full-page-overflow-scrolling-expected.txt
    M LayoutTests/overlay-region/full-page-scrolling-expected.txt
    M LayoutTests/overlay-region/many-candidates-expected.txt
    M LayoutTests/overlay-region/many-candidates.html
    A LayoutTests/overlay-region/snapping-expected.txt
    A LayoutTests/overlay-region/snapping.html
    M LayoutTests/overlay-region/split-scrollers-expected.txt
    M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm

  Log Message:
  -----------
  Overlay regions should snap to the scrollview's edges
https://bugs.webkit.org/show_bug.cgi?id=268984
<rdar://122495015>

Reviewed by Mike Wyrzykowski.

Improve Overlay Regions by making them snap to the ScrollView's edges
and use the correct coordinate space.

* Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
(snapRectToScrollViewEdges):
Introduce a new function to snap/clip the OverlayRegion rects to the
edges of the ScrollView.
(configureScrollViewWithOverlayRegionsIDs):
- Generate Overlay Regions for fixed elements that might be part of a
  ScrollView ancestor.
- Handle the case where the main scroller is itself fixed.
- Position the Overlay Regions relative to the viewport of the
  ScrollView.

* LayoutTests/overlay-region/snapping-expected.txt: Added
* LayoutTests/overlay-region/snapping.html: Added.
Introduce a new test to cover the snapping code.

* LayoutTests/overlay-region/many-candidates.html:
* LayoutTests/overlay-region/many-candidates-expected.txt:
Adjust the scrollers height to cover clipping.

* LayoutTests/overlay-region/full-page-dynamic-expected.txt:
* LayoutTests/overlay-region/full-page-expected.txt:
* LayoutTests/overlay-region/full-page-overflow-expected.txt:
* LayoutTests/overlay-region/full-page-overflow-scrolling-expected.txt:
* LayoutTests/overlay-region/full-page-scrolling-expected.txt:
* LayoutTests/overlay-region/split-scrollers-expected.txt:
Update test expectations for the new rules / coordinate space.

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




More information about the webkit-changes mailing list