Bug 226572

Summary: [css-scroll-snap] Scroll snap offsets are interpreted as scroll positions in ScrollableArea
Product: WebKit Reporter: Martin Robinson <mrobinson>
Component: ScrollingAssignee: Martin Robinson <mrobinson>
Status: RESOLVED FIXED    
Severity: Normal CC: simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 218115    
Attachments:
Description Flags
Patch
none
Patch none

Description Martin Robinson 2021-06-03 02:05:48 PDT
In ScrollableArea when there is an initial scroll-snap offset or while resnapping after layout, scroll offsets are interpreted as scroll positions. This leads to incorrect scroll positions when dealing with RTL layouts.
Comment 1 Martin Robinson 2021-06-03 05:32:44 PDT
Created attachment 430462 [details]
Patch
Comment 2 Simon Fraser (smfr) 2021-06-03 10:18:47 PDT
Comment on attachment 430462 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=430462&action=review

Please check the test failures.

> Source/WebCore/platform/ScrollableArea.cpp:516
> +IntPoint ScrollableArea::nearestActiveSnapPoint(const IntPoint& currentOffset)

Maybe we should rename this nearestActiveSnapPointForOffset(). The argument should be a ScrollOffset.
Comment 3 Martin Robinson 2021-06-04 00:24:47 PDT
It looks like these Mac failures are due to a related issue at bug 226630. I have a fix for that, but it depends on bug 226538.
Comment 4 Radar WebKit Bug Importer 2021-06-10 02:06:19 PDT
<rdar://problem/79128519>
Comment 5 Martin Robinson 2021-06-15 01:26:10 PDT
Created attachment 431414 [details]
Patch
Comment 6 EWS 2021-06-15 04:09:43 PDT
Committed r278868 (238812@main): <https://commits.webkit.org/238812@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 431414 [details].