Title: [246019] trunk
- Revision
- 246019
- Author
- [email protected]
- Date
- 2019-06-01 20:01:47 -0700 (Sat, 01 Jun 2019)
Log Message
[Async overflow scroll] Flashing content when scrolling async overflow with a negative z-index child
https://bugs.webkit.org/show_bug.cgi?id=198458
Reviewed by Dean Jackson.
Source/WebCore:
Set the GraphicsLayerPaintOverflowContents phase on the foreground layer in a composited overflow scroller,
which prevents clipping to the visible region, fixing scrolling flashes.
Tested by compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases.html
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updatePaintingPhases):
LayoutTests:
* compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt:
* platform/ios-wk2/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (246018 => 246019)
--- trunk/LayoutTests/ChangeLog 2019-06-02 02:55:57 UTC (rev 246018)
+++ trunk/LayoutTests/ChangeLog 2019-06-02 03:01:47 UTC (rev 246019)
@@ -1,5 +1,15 @@
2019-06-01 Simon Fraser <[email protected]>
+ [Async overflow scroll] Flashing content when scrolling async overflow with a negative z-index child
+ https://bugs.webkit.org/show_bug.cgi?id=198458
+
+ Reviewed by Dean Jackson.
+
+ * compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt:
+ * platform/ios-wk2/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt:
+
+2019-06-01 Simon Fraser <[email protected]>
+
Async overflow scroll on iOS paints slowly if it has a negative z-index child
https://bugs.webkit.org/show_bug.cgi?id=196508
rdar://problem/49532709
Modified: trunk/LayoutTests/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt (246018 => 246019)
--- trunk/LayoutTests/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt 2019-06-02 02:55:57 UTC (rev 246018)
+++ trunk/LayoutTests/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt 2019-06-02 03:01:47 UTC (rev 246019)
@@ -54,6 +54,7 @@
(drawsContent 1)
(paintingPhases
GraphicsLayerPaintForeground
+ GraphicsLayerPaintOverflowContents
)
)
)
Modified: trunk/LayoutTests/platform/ios-wk2/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt (246018 => 246019)
--- trunk/LayoutTests/platform/ios-wk2/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt 2019-06-02 02:55:57 UTC (rev 246018)
+++ trunk/LayoutTests/platform/ios-wk2/compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases-expected.txt 2019-06-02 03:01:47 UTC (rev 246019)
@@ -54,6 +54,7 @@
(drawsContent 1)
(paintingPhases
GraphicsLayerPaintForeground
+ GraphicsLayerPaintOverflowContents
)
)
)
Modified: trunk/Source/WebCore/ChangeLog (246018 => 246019)
--- trunk/Source/WebCore/ChangeLog 2019-06-02 02:55:57 UTC (rev 246018)
+++ trunk/Source/WebCore/ChangeLog 2019-06-02 03:01:47 UTC (rev 246019)
@@ -1,5 +1,20 @@
2019-06-01 Simon Fraser <[email protected]>
+ [Async overflow scroll] Flashing content when scrolling async overflow with a negative z-index child
+ https://bugs.webkit.org/show_bug.cgi?id=198458
+
+ Reviewed by Dean Jackson.
+
+ Set the GraphicsLayerPaintOverflowContents phase on the foreground layer in a composited overflow scroller,
+ which prevents clipping to the visible region, fixing scrolling flashes.
+
+ Tested by compositing/overflow/stacking-context-composited-scroller-with-foreground-paint-phases.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updatePaintingPhases):
+
+2019-06-01 Simon Fraser <[email protected]>
+
Async overflow scroll on iOS paints slowly if it has a negative z-index child
https://bugs.webkit.org/show_bug.cgi?id=196508
rdar://problem/49532709
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (246018 => 246019)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2019-06-02 02:55:57 UTC (rev 246018)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2019-06-02 03:01:47 UTC (rev 246019)
@@ -2102,6 +2102,10 @@
if (m_foregroundLayer) {
OptionSet<GraphicsLayerPaintingPhase> foregroundLayerPhases { GraphicsLayerPaintingPhase::Foreground };
+
+ if (m_scrolledContentsLayer)
+ foregroundLayerPhases.add(GraphicsLayerPaintingPhase::OverflowContents);
+
m_foregroundLayer->setPaintingPhase(foregroundLayerPhases);
primaryLayerPhases.remove(GraphicsLayerPaintingPhase::Foreground);
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes