Bug 198532 - Sticky positioning is jumpy in many overflow cases
Summary: Sticky positioning is jumpy in many overflow cases
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Scrolling (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
: 196724 (view as bug list)
Depends on:
Blocks:
 
Reported: 2019-06-04 08:59 PDT by Antti Koivisto
Modified: 2019-06-11 13:56 PDT (History)
10 users (show)

See Also:


Attachments
patch (39.90 KB, patch)
2019-06-04 09:16 PDT, Antti Koivisto
simon.fraser: review+
ews-watchlist: commit-queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ews104 for mac-highsierra-wk2 (3.04 MB, application/zip)
2019-06-04 10:46 PDT, EWS Watchlist
no flags Details
patch (40.66 KB, patch)
2019-06-04 12:19 PDT, Antti Koivisto
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Antti Koivisto 2019-06-04 08:59:16 PDT
We need to compute offsets correctly.
Comment 1 Radar WebKit Bug Importer 2019-06-04 09:06:42 PDT
<rdar://problem/51400532>
Comment 2 Antti Koivisto 2019-06-04 09:16:06 PDT
Created attachment 371290 [details]
patch
Comment 3 Simon Fraser (smfr) 2019-06-04 10:18:57 PDT
Comment on attachment 371290 [details]
patch

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

> Source/WebCore/page/scrolling/cocoa/ScrollingTreeStickyNode.mm:89
> +                    auto overflowNode = scrollingTree().nodeForID(positioningAncestor.relatedOverflowScrollingNodes()[0]);

Are you guaranteed to have positioningAncestor.relatedOverflowScrollingNodes ?
Comment 4 EWS Watchlist 2019-06-04 10:46:37 PDT
Comment on attachment 371290 [details]
patch

Attachment 371290 [details] did not pass mac-wk2-ews (mac-wk2):
Output: https://webkit-queues.webkit.org/results/12374500

New failing tests:
scrollingcoordinator/mac/nested-sticky.html
Comment 5 EWS Watchlist 2019-06-04 10:46:39 PDT
Created attachment 371298 [details]
Archive of layout-test-results from ews104 for mac-highsierra-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-highsierra-wk2  Platform: Mac OS X 10.13.6
Comment 6 Simon Fraser (smfr) 2019-06-04 10:47:32 PDT
Comment on attachment 371290 [details]
patch

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

> Source/WebCore/page/scrolling/cocoa/ScrollingTreeStickyNode.mm:83
> +        for (auto* ancestor = parent(); ancestor; ancestor = ancestor->parent()) {

Also, shame this is making the tree walk O(n^2)
Comment 7 Antti Koivisto 2019-06-04 12:17:08 PDT
> Are you guaranteed to have positioningAncestor.relatedOverflowScrollingNodes
> ?

I don't think we ever construct these without. It wouldn't make much sense.
Comment 8 Antti Koivisto 2019-06-04 12:19:51 PDT
Created attachment 371314 [details]
patch
Comment 9 WebKit Commit Bot 2019-06-04 14:54:03 PDT
Comment on attachment 371314 [details]
patch

Clearing flags on attachment: 371314

Committed r246083: <https://trac.webkit.org/changeset/246083>
Comment 10 WebKit Commit Bot 2019-06-04 14:54:05 PDT
All reviewed patches have been landed.  Closing bug.
Comment 11 Simon Fraser (smfr) 2019-06-11 13:56:25 PDT
*** Bug 196724 has been marked as a duplicate of this bug. ***