Summary: | [Async overflow scroll] Clipped composited layers inside overflow scroll jitter and get incorrectly clipped | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> | ||||||||||||||||||||||
Component: | Scrolling | Assignee: | Simon Fraser (smfr) <simon.fraser> | ||||||||||||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||||||||||||
Severity: | Normal | CC: | ews-watchlist, koivisto, mcatanzaro, rniwa, simon.fraser, webkit-bug-importer, zalan | ||||||||||||||||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||||||||||||||||
Version: | WebKit Nightly Build | ||||||||||||||||||||||||
Hardware: | Unspecified | ||||||||||||||||||||||||
OS: | Unspecified | ||||||||||||||||||||||||
Bug Depends on: | 199132 | ||||||||||||||||||||||||
Bug Blocks: | |||||||||||||||||||||||||
Attachments: |
|
Description
Simon Fraser (smfr)
2019-06-22 21:46:21 PDT
Created attachment 372693 [details]
Patch
Comment on attachment 372693 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=372693&action=review > Source/WebCore/ChangeLog:54 > + With this patch, ScrollingTreePositionedNode are purely for absolute position inside non-containing-block > + stacking context overflow scroll. LayoutConstraints is renamed to AbsolutePositionConstraints accordingly. You might also want to rename ScrollingTreePositionedNode to something more specific (AbsolutePositionedNode?). > LayoutTests/compositing/scrolling/async-overflow-scrolling/clipped-layer-in-overflow-clipped-by-scroll.html:50 > + document.getElementById('layers').innerText = window.internals.layerTreeAsText(document, internals.LAYER_TREE_INCLUDES_CLIPPING); It would be good to also have some dynamic reftests showing element moving like they should, not just tree dumps. Comment on attachment 372693 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=372693&action=review > Source/WebCore/rendering/LayerAncestorClippingStack.cpp:124 > + int numClipEntries = clipDataStack.size(); > + int numStackEntries = m_stack.size(); I prefer 'clipEntryCount', 'stackEntryCount' > Source/WebCore/rendering/RenderLayerCompositor.cpp:4237 > + // FIXME: The child might be in a child frame. Need to do something that crosses frame boundaries. The child might be a child frame but this doesn't shouldn't happen in any more general case (and is already handled by frame hosting nodes perhaps?). Created attachment 372709 [details]
Patch
Comment on attachment 372709 [details] Patch Attachment 372709 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/12557237 New failing tests: css3/blending/blend-mode-clip-rect-accelerated-blending.html css3/blending/blend-mode-clip-accelerated-blending-double.html css3/blending/blend-mode-clip-accelerated-transformed-blending.html css3/blending/blend-mode-clip-accelerated-blending-with-siblings.html css3/blending/blend-mode-clip-accelerated-blending-child.html legacy-animation-engine/compositing/backing/backing-store-attachment-empty-keyframe.html imported/blink/css3/blending/mix-blend-mode-has-ancestor-clipping-layer.html compositing/overflow/scrolling-content-clip-to-viewport.html css3/blending/blend-mode-isolation-accelerated-overflow-hidden.html compositing/rtl/rtl-scrolling-with-transformed-descendants.html css3/blending/blend-mode-accelerated-parent-overflow-hidden.html css3/blending/blend-mode-clip-accelerated-blending-canvas.html Created attachment 372714 [details]
Archive of layout-test-results from ews101 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101 Port: mac-highsierra Platform: Mac OS X 10.13.6
Comment on attachment 372709 [details] Patch Attachment 372709 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/12557254 New failing tests: css3/blending/blend-mode-clip-rect-accelerated-blending.html css3/blending/blend-mode-clip-accelerated-blending-double.html css3/blending/blend-mode-clip-accelerated-transformed-blending.html css3/blending/blend-mode-clip-accelerated-blending-with-siblings.html css3/blending/blend-mode-clip-accelerated-blending-child.html imported/blink/css3/blending/mix-blend-mode-has-ancestor-clipping-layer.html legacy-animation-engine/compositing/backing/backing-store-attachment-empty-keyframe.html css3/blending/blend-mode-isolation-accelerated-overflow-hidden.html css3/blending/blend-mode-accelerated-parent-overflow-hidden.html css3/blending/blend-mode-clip-accelerated-blending-canvas.html Created attachment 372715 [details]
Archive of layout-test-results from ews105 for mac-highsierra-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews105 Port: mac-highsierra-wk2 Platform: Mac OS X 10.13.6
Comment on attachment 372709 [details] Patch Attachment 372709 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/12557270 New failing tests: css3/blending/blend-mode-clip-rect-accelerated-blending.html css3/blending/blend-mode-clip-accelerated-blending-double.html css3/blending/blend-mode-clip-accelerated-transformed-blending.html css3/blending/blend-mode-clip-accelerated-blending-with-siblings.html css3/blending/blend-mode-clip-accelerated-blending-child.html legacy-animation-engine/compositing/backing/backing-store-attachment-empty-keyframe.html imported/blink/css3/blending/mix-blend-mode-has-ancestor-clipping-layer.html compositing/overflow/scrolling-content-clip-to-viewport.html css3/blending/blend-mode-isolation-accelerated-overflow-hidden.html compositing/rtl/rtl-scrolling-with-transformed-descendants.html css3/blending/blend-mode-accelerated-parent-overflow-hidden.html css3/blending/blend-mode-clip-accelerated-blending-canvas.html Created attachment 372717 [details]
Archive of layout-test-results from ews116 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews116 Port: mac-highsierra Platform: Mac OS X 10.13.6
Comment on attachment 372709 [details] Patch Attachment 372709 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/12557294 New failing tests: platform/ios/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html css3/blending/blend-mode-clip-rect-accelerated-blending.html css3/blending/blend-mode-clip-accelerated-blending-double.html css3/blending/blend-mode-clip-accelerated-transformed-blending.html css3/blending/blend-mode-clip-accelerated-blending-with-siblings.html css3/blending/blend-mode-clip-accelerated-blending-child.html imported/blink/css3/blending/mix-blend-mode-has-ancestor-clipping-layer.html legacy-animation-engine/compositing/backing/backing-store-attachment-empty-keyframe.html css3/blending/blend-mode-isolation-accelerated-overflow-hidden.html css3/blending/blend-mode-accelerated-parent-overflow-hidden.html Created attachment 372718 [details]
Archive of layout-test-results from ews124 for ios-simulator-wk2
The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews124 Port: ios-simulator-wk2 Platform: Mac OS X 10.14.5
Created attachment 372720 [details]
Patch
Comment on attachment 372720 [details] Patch Attachment 372720 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/12558068 New failing tests: compositing/rtl/rtl-scrolling-with-transformed-descendants.html compositing/overflow/scrolling-content-clip-to-viewport.html Created attachment 372724 [details]
Archive of layout-test-results from ews101 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101 Port: mac-highsierra Platform: Mac OS X 10.13.6
Comment on attachment 372720 [details] Patch Attachment 372720 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/12558098 New failing tests: compositing/rtl/rtl-scrolling-with-transformed-descendants.html compositing/overflow/scrolling-content-clip-to-viewport.html Created attachment 372727 [details]
Archive of layout-test-results from ews115 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews115 Port: mac-highsierra Platform: Mac OS X 10.13.6
Comment on attachment 372720 [details] Patch Attachment 372720 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/12558110 New failing tests: platform/ios/media/video-play-glyph-composited-outside-overflow-scrolling-touch-container.html Created attachment 372728 [details]
Archive of layout-test-results from ews122 for ios-simulator-wk2
The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews122 Port: ios-simulator-wk2 Platform: Mac OS X 10.14.5
I'm seeing spam from GraphicsContext now: GraphicsContext 0x7ffd8765f6b0 stack changed by 1 GraphicsContext 0x7ffd8765f830 stack changed by 1 GraphicsContext 0x7ffd8765f6b0 stack changed by 1 WebKit shouldn't print anything during normal use. Simon, can we remove this? Ooops, I left those in by mistake. I'll remove. Removing via bug 199834. |