RESOLVED FIXED 195608
Scrolling tree should reposition non-stacking order descendents of overflow:scroll - step 1.
https://bugs.webkit.org/show_bug.cgi?id=195608
Summary Scrolling tree should reposition non-stacking order descendents of overflow:s...
Simon Fraser (smfr)
Reported 2019-03-11 23:21:29 PDT
Scrolling tree should reposition non-stacking order descendents of overflow:scroll
Attachments
Mostly ready patch, needs tests (93.62 KB, patch)
2019-03-11 23:28 PDT, Simon Fraser (smfr)
no flags
Archive of layout-test-results from ews107 for mac-highsierra-wk2 (2.60 MB, application/zip)
2019-03-12 00:47 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews121 for ios-simulator-wk2 (2.62 MB, application/zip)
2019-03-12 08:40 PDT, EWS Watchlist
no flags
Patch (104.58 KB, patch)
2019-03-12 11:10 PDT, Simon Fraser (smfr)
no flags
Archive of layout-test-results from ews106 for mac-highsierra-wk2 (2.80 MB, application/zip)
2019-03-12 12:49 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews121 for ios-simulator-wk2 (2.81 MB, application/zip)
2019-03-12 14:16 PDT, EWS Watchlist
no flags
Patch (122.45 KB, patch)
2019-03-12 20:26 PDT, Simon Fraser (smfr)
no flags
Archive of layout-test-results from ews105 for mac-highsierra-wk2 (2.84 MB, application/zip)
2019-03-12 21:44 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews121 for ios-simulator-wk2 (2.52 MB, application/zip)
2019-03-13 01:37 PDT, EWS Watchlist
no flags
Step 1: add positioning nodes (83.33 KB, patch)
2019-03-13 10:20 PDT, Simon Fraser (smfr)
zalan: review+
Simon Fraser (smfr)
Comment 1 2019-03-11 23:28:49 PDT
Created attachment 364356 [details] Mostly ready patch, needs tests
Simon Fraser (smfr)
Comment 2 2019-03-11 23:29:44 PDT
EWS Watchlist
Comment 3 2019-03-11 23:34:04 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 4 2019-03-12 00:47:28 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 5 2019-03-12 00:47:30 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 6 2019-03-12 08:40:30 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 7 2019-03-12 08:40:31 PDT Comment hidden (obsolete)
Simon Fraser (smfr)
Comment 8 2019-03-12 11:10:14 PDT
EWS Watchlist
Comment 9 2019-03-12 11:13:51 PDT Comment hidden (obsolete)
Antti Koivisto
Comment 10 2019-03-12 12:22:04 PDT
Comment on attachment 364412 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=364412&action=review Looks good. > Source/WebCore/page/scrolling/ScrollingTree.cpp:315 > + auto changeRoot = rootOfScrollingImpactedNodes(changedNode); auto* > Source/WebCore/rendering/RenderLayerBacking.cpp:1833 > + if (roles.contains(ScrollCoordinationRole::Positioning) && m_positioningNodeID) { > + LOG(Compositing, "Detaching Positioned node %" PRIu64, m_positioningNodeID); There is some inconsistency (here and elsewhere) whether these are called "positioning nodes" or "positioned nodes". > Source/WebCore/rendering/RenderLayerCompositor.cpp:2891 > + // FIXME: They should be composited alreayd, but may not have nodeIDs yet. Typo: already > Source/WebCore/rendering/RenderLayerCompositor.cpp:2911 > +// We also have to be positioned, right? indent > Source/WebCore/rendering/RenderLayerCompositor.cpp:3942 > +// FIXME: ordering. indent
EWS Watchlist
Comment 11 2019-03-12 12:49:22 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 12 2019-03-12 12:49:24 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 13 2019-03-12 14:16:07 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 14 2019-03-12 14:16:10 PDT Comment hidden (obsolete)
Simon Fraser (smfr)
Comment 15 2019-03-12 20:26:01 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 16 2019-03-12 20:29:19 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 17 2019-03-12 21:44:14 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 18 2019-03-12 21:44:15 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 19 2019-03-13 01:37:08 PDT Comment hidden (obsolete)
EWS Watchlist
Comment 20 2019-03-13 01:37:10 PDT Comment hidden (obsolete)
Frédéric Wang (:fredw)
Comment 21 2019-03-13 03:37:43 PDT
Comment on attachment 364502 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=364502&action=review This patch is huge! > Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h:41 > + Positioned, extra comma after "Positioned" > Source/WebCore/rendering/RenderLayerCompositor.cpp:2879 > + // FIXME: They should be composited alreayd, but may not have nodeIDs yet. typo: already > Source/WebCore/rendering/RenderLayerCompositor.cpp:2893 > +// This should be: is there an overflow scroll in the composting ancestor chain up to the containing block typo: compositing
Simon Fraser (smfr)
Comment 22 2019-03-13 10:20:08 PDT
Created attachment 364543 [details] Step 1: add positioning nodes
Simon Fraser (smfr)
Comment 23 2019-03-13 10:20:33 PDT
Comment on attachment 364543 [details] Step 1: add positioning nodes I decided to break up the patch.
zalan
Comment 24 2019-03-13 10:43:35 PDT
Comment on attachment 364543 [details] Step 1: add positioning nodes View in context: https://bugs.webkit.org/attachment.cgi?id=364543&action=review > Source/WebCore/page/scrolling/ScrollingConstraints.h:38 > + LayoutConstraints() = default? > Source/WebCore/page/scrolling/ScrollingConstraints.h:62 > + void setLayerPositionAtLastLayout(FloatPoint p) { m_layerPositionAtLastLayout = p; } p???
Simon Fraser (smfr)
Comment 25 2019-03-13 15:35:08 PDT
Note You need to log in before you can comment on or make changes to this bug.