Title: [213566] trunk
Revision
213566
Author
[email protected]
Date
2017-03-07 21:46:52 -0800 (Tue, 07 Mar 2017)

Log Message

Have fixedPositionCreatesStackingContext be on by default everywhere
https://bugs.webkit.org/show_bug.cgi?id=169334

Reviewed by Zalan Bujtas.

It makes no sense to have web-exposed CSS functionality be different based on setting,
and other browser are now aligned with having position:fixed create stacking context.

So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
always force stacking context for position:fixed.

Source/WebCore:

* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* page/Settings.cpp:
* page/Settings.in:

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setUseFixedLayout):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::updatePreferences):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):

LayoutTests:

* compositing/absolute-inside-out-of-view-fixed.html:
* compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html:
* compositing/layer-creation/fixed-overlap-extent-rtl.html:
* compositing/layer-creation/fixed-overlap-extent.html:
* compositing/layer-creation/fixed-position-change-out-of-view-in-view.html:
* compositing/layer-creation/fixed-position-in-view-dynamic.html:
* compositing/layer-creation/fixed-position-out-of-view-dynamic.html:
* compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html:
* compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html:
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html:
* compositing/layer-creation/fixed-position-out-of-view-scaled.html:
* compositing/layer-creation/fixed-position-transformed-into-view.html:
* compositing/layer-creation/fixed-position-transformed-outside-view.html:
* compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html:
* compositing/repaint/scroll-fixed-layer-no-content.html:
* compositing/repaint/scroll-fixed-layer-out-of-view.html:
* fast/block/positioning/fixed-position-stacking-context2.html:
* fullscreen/full-screen-fixed-pos-parent.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (213565 => 213566)


--- trunk/LayoutTests/ChangeLog	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/ChangeLog	2017-03-08 05:46:52 UTC (rev 213566)
@@ -1,3 +1,35 @@
+2017-03-07  Simon Fraser  <[email protected]>
+
+        Have fixedPositionCreatesStackingContext be on by default everywhere
+        https://bugs.webkit.org/show_bug.cgi?id=169334
+
+        Reviewed by Zalan Bujtas.
+
+        It makes no sense to have web-exposed CSS functionality be different based on setting,
+        and other browser are now aligned with having position:fixed create stacking context.
+
+        So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
+        always force stacking context for position:fixed.
+
+        * compositing/absolute-inside-out-of-view-fixed.html:
+        * compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html:
+        * compositing/layer-creation/fixed-overlap-extent-rtl.html:
+        * compositing/layer-creation/fixed-overlap-extent.html:
+        * compositing/layer-creation/fixed-position-change-out-of-view-in-view.html:
+        * compositing/layer-creation/fixed-position-in-view-dynamic.html:
+        * compositing/layer-creation/fixed-position-out-of-view-dynamic.html:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled.html:
+        * compositing/layer-creation/fixed-position-transformed-into-view.html:
+        * compositing/layer-creation/fixed-position-transformed-outside-view.html:
+        * compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html:
+        * compositing/repaint/scroll-fixed-layer-no-content.html:
+        * compositing/repaint/scroll-fixed-layer-out-of-view.html:
+        * fast/block/positioning/fixed-position-stacking-context2.html:
+        * fullscreen/full-screen-fixed-pos-parent.html:
+
 2017-03-07  Jiewen Tan  <[email protected]>
 
         [WebCrypto] Implement ECDH ImportKey/ExportKey operations

Modified: trunk/LayoutTests/compositing/absolute-inside-out-of-view-fixed.html (213565 => 213566)


--- trunk/LayoutTests/compositing/absolute-inside-out-of-view-fixed.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/absolute-inside-out-of-view-fixed.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -29,10 +29,8 @@
       if (window.testRunner) {
         testRunner.waitUntilDone();
         testRunner.dumpAsText();
-        if (window.internals) {
+        if (window.internals)
             window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-            window.internals.settings.setFixedPositionCreatesStackingContext(true);
-        }
       }
 
       function doScroll()

Modified: trunk/LayoutTests/compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html (213565 => 213566)


--- trunk/LayoutTests/compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -27,7 +27,6 @@
   if (window.internals) {
     window.internals.settings.setVisualViewportEnabled(false);
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
     window.internals.setPageScaleFactor(0.5, 0, 0);
   }
 </script>

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent-rtl.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent-rtl.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent-rtl.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -35,10 +35,8 @@
         if (window.testRunner)
             testRunner.dumpAsText();
 
-        if (window.internals) {
+        if (window.internals)
             internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-            internals.settings.setFixedPositionCreatesStackingContext(true);
-        }
 
         function doTest()
         {

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-overlap-extent.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -35,10 +35,8 @@
         if (window.testRunner)
             testRunner.dumpAsText();
 
-        if (window.internals) {
+        if (window.internals)
             internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-            internals.settings.setFixedPositionCreatesStackingContext(true);
-        }
 
         function doTest()
         {

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-change-out-of-view-in-view.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-change-out-of-view-in-view.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-change-out-of-view-in-view.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -11,7 +11,6 @@
     if (window.testRunner && window.internals) {
       testRunner.dumpAsText();
       internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-      internals.settings.setFixedPositionCreatesStackingContext(true);
 
       addEventListener("load", function() {
         document.getElementById("layerTree1").innerText = internals.layerTreeAsText(document);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-in-view-dynamic.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-in-view-dynamic.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-in-view-dynamic.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -16,7 +16,6 @@
     if (window.testRunner && window.internals) {
       testRunner.dumpAsText();
       internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-      internals.settings.setFixedPositionCreatesStackingContext(true);
 
       addEventListener("load", function() {
         var fixed = document.createElement("div");

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-dynamic.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-dynamic.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-dynamic.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -16,7 +16,6 @@
     if (window.testRunner && window.internals) {
       testRunner.dumpAsText();
       internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-      internals.settings.setFixedPositionCreatesStackingContext(true);
 
       addEventListener("load", function() {
         var fixed = document.createElement("div");

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -8,7 +8,6 @@
   }
   if (window.internals) {
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
     addEventListener("load", function() {
       window.internals.setPageScaleFactor(0.5, 0, 0);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -8,7 +8,6 @@
   }
   if (window.internals) {
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
     addEventListener("load", function() {
       window.internals.setPageScaleFactor(0.5, 0, 0);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -16,7 +16,6 @@
   }
   if (window.internals) {
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
     addEventListener("load", function() {
       window.scrollTo(100,100);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -16,7 +16,6 @@
   }
   if (window.internals) {
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
     addEventListener("load", function() {
       document.getElementById("layerTree").innerText = internals.layerTreeAsText(document);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-into-view.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-into-view.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-into-view.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -31,7 +31,6 @@
 }
 if (window.internals) {
     window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
     window.addEventListener("load", function() {
         document.getElementById("layerTree").innerText = internals.layerTreeAsText(document);

Modified: trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-outside-view.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-outside-view.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/fixed-position-transformed-outside-view.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -31,7 +31,6 @@
     }
     if (window.internals) {
         window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-        window.internals.settings.setFixedPositionCreatesStackingContext(true);
 
         window.addEventListener("load", function() {
             document.getElementById("layerTree").innerText = internals.layerTreeAsText(document);

Modified: trunk/LayoutTests/compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html (213565 => 213566)


--- trunk/LayoutTests/compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -15,10 +15,8 @@
   </style>
 
   <script type="text/_javascript_">
-    if (window.internals) {
+    if (window.internals)
       window.internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-      window.internals.settings.setFixedPositionCreatesStackingContext(true);
-    }
 
     if (window.testRunner) {
       testRunner.dumpAsText();

Modified: trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-no-content.html (213565 => 213566)


--- trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-no-content.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-no-content.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -5,10 +5,8 @@
         if (window.testRunner)
             testRunner.dumpAsText();
 
-        if (window.internals) {
+        if (window.internals)
             internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-            internals.settings.setFixedPositionCreatesStackingContext(true);
-        }
 
         function test()
         {

Modified: trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-out-of-view.html (213565 => 213566)


--- trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-out-of-view.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/compositing/repaint/scroll-fixed-layer-out-of-view.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -5,10 +5,8 @@
         if (window.testRunner)
             testRunner.dumpAsText();
 
-        if (window.internals) {
+        if (window.internals)
             internals.settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-            internals.settings.setFixedPositionCreatesStackingContext(true);
-        }
 
         function test()
         {

Modified: trunk/LayoutTests/fast/block/positioning/fixed-position-stacking-context2.html (213565 => 213566)


--- trunk/LayoutTests/fast/block/positioning/fixed-position-stacking-context2.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/fast/block/positioning/fixed-position-stacking-context2.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -23,13 +23,6 @@
     z-index: 2;
 }
 </style>
-<script>
-if ("internals" in window) {
-    window.internals.settings.setFixedPositionCreatesStackingContext(true);
-} else {
-    document.write("This test depends on the FixedPositionCreatesStackingContext setting being true, so run in DumpRenderTree or manually enable it");
-}
-</script>
 <div class="green"></div>
 <div class="container">
   <div class="green"></div>

Modified: trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html (213565 => 213566)


--- trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html	2017-03-08 05:46:52 UTC (rev 213566)
@@ -26,9 +26,6 @@
 </head>
 <script src=""
 <script>
-    if (window.internals)
-        window.internals.settings.setFixedPositionCreatesStackingContext(true);
-
     function doTest() {
         if (window.testRunner) {
             testRunner.dumpAsText(true);

Modified: trunk/Source/WebCore/ChangeLog (213565 => 213566)


--- trunk/Source/WebCore/ChangeLog	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebCore/ChangeLog	2017-03-08 05:46:52 UTC (rev 213566)
@@ -1,3 +1,21 @@
+2017-03-07  Simon Fraser  <[email protected]>
+
+        Have fixedPositionCreatesStackingContext be on by default everywhere
+        https://bugs.webkit.org/show_bug.cgi?id=169334
+
+        Reviewed by Zalan Bujtas.
+
+        It makes no sense to have web-exposed CSS functionality be different based on setting,
+        and other browser are now aligned with having position:fixed create stacking context.
+
+        So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
+        always force stacking context for position:fixed.
+
+        * css/StyleResolver.cpp:
+        (WebCore::StyleResolver::adjustRenderStyle):
+        * page/Settings.cpp:
+        * page/Settings.in:
+
 2017-03-07  Said Abou-Hallawa  <[email protected]>
 
         Asynchronous image decoding should consider the drawing size if it is smaller than the size of the image

Modified: trunk/Source/WebCore/css/StyleResolver.cpp (213565 => 213566)


--- trunk/Source/WebCore/css/StyleResolver.cpp	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebCore/css/StyleResolver.cpp	2017-03-08 05:46:52 UTC (rev 213566)
@@ -911,7 +911,7 @@
             || style.hasBlendMode()
             || style.hasIsolation()
             || style.position() == StickyPosition
-            || (style.position() == FixedPosition && settings().fixedPositionCreatesStackingContext())
+            || style.position() == FixedPosition
             || style.hasFlowFrom()
             || style.willChangeCreatesStackingContext())
             style.setZIndex(0);

Modified: trunk/Source/WebCore/page/Settings.cpp (213565 => 213566)


--- trunk/Source/WebCore/page/Settings.cpp	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebCore/page/Settings.cpp	2017-03-08 05:46:52 UTC (rev 213566)
@@ -142,7 +142,6 @@
 #endif
 
 #if PLATFORM(IOS)
-static const bool defaultFixedPositionCreatesStackingContext = true;
 static const bool defaultFixedBackgroundsPaintRelativeToDocument = true;
 static const bool defaultAcceleratedCompositingForFixedPositionEnabled = true;
 static const bool defaultAllowsInlineMediaPlayback = false;
@@ -156,7 +155,6 @@
 static const bool defaultMediaControlsScaleWithPageZoom = true;
 static const bool defaultQuickTimePluginReplacementEnabled = true;
 #else
-static const bool defaultFixedPositionCreatesStackingContext = false;
 static const bool defaultFixedBackgroundsPaintRelativeToDocument = false;
 static const bool defaultAcceleratedCompositingForFixedPositionEnabled = false;
 static const bool defaultAllowsInlineMediaPlayback = true;

Modified: trunk/Source/WebCore/page/Settings.in (213565 => 213566)


--- trunk/Source/WebCore/page/Settings.in	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebCore/page/Settings.in	2017-03-08 05:46:52 UTC (rev 213566)
@@ -158,7 +158,6 @@
 wantsBalancedSetDefersLoadingBehavior initial=false
 requestAnimationFrameEnabled initial=true
 
-fixedPositionCreatesStackingContext initial=defaultFixedPositionCreatesStackingContext
 cookieEnabled initial=true
 mediaEnabled initial=true
 DOMPasteAllowed initial=false

Modified: trunk/Source/WebKit/mac/ChangeLog (213565 => 213566)


--- trunk/Source/WebKit/mac/ChangeLog	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit/mac/ChangeLog	2017-03-08 05:46:52 UTC (rev 213566)
@@ -1,3 +1,19 @@
+2017-03-07  Simon Fraser  <[email protected]>
+
+        Have fixedPositionCreatesStackingContext be on by default everywhere
+        https://bugs.webkit.org/show_bug.cgi?id=169334
+
+        Reviewed by Zalan Bujtas.
+
+        It makes no sense to have web-exposed CSS functionality be different based on setting,
+        and other browser are now aligned with having position:fixed create stacking context.
+
+        So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
+        always force stacking context for position:fixed.
+
+        * WebView/WebView.mm:
+        (-[WebView _preferencesChanged:]):
+
 2017-03-06  Simon Fraser  <[email protected]>
 
         Initialize the subpixelAntialiasedLayerTextEnabled Setting in WebKit1

Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (213565 => 213566)


--- trunk/Source/WebKit/mac/WebView/WebView.mm	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm	2017-03-08 05:46:52 UTC (rev 213566)
@@ -2776,7 +2776,6 @@
     settings.setPlugInSnapshottingEnabled([preferences plugInSnapshottingEnabled]);
     settings.setHttpEquivEnabled([preferences httpEquivEnabled]);
 
-    settings.setFixedPositionCreatesStackingContext(true);
 #if PLATFORM(MAC)
     settings.setAcceleratedCompositingForFixedPositionEnabled(true);
 #endif

Modified: trunk/Source/WebKit2/ChangeLog (213565 => 213566)


--- trunk/Source/WebKit2/ChangeLog	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit2/ChangeLog	2017-03-08 05:46:52 UTC (rev 213566)
@@ -1,3 +1,23 @@
+2017-03-07  Simon Fraser  <[email protected]>
+
+        Have fixedPositionCreatesStackingContext be on by default everywhere
+        https://bugs.webkit.org/show_bug.cgi?id=169334
+
+        Reviewed by Zalan Bujtas.
+
+        It makes no sense to have web-exposed CSS functionality be different based on setting,
+        and other browser are now aligned with having position:fixed create stacking context.
+
+        So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
+        always force stacking context for position:fixed.
+
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::setUseFixedLayout):
+        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
+        (WebKit::RemoteLayerTreeDrawingArea::updatePreferences):
+        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+        (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
+
 2017-03-07  Brent Fulgham  <[email protected]>
 
         [Mac][WK2] Whitelist iokit-get-properties

Modified: trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp (213565 => 213566)


--- trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp	2017-03-08 05:46:52 UTC (rev 213566)
@@ -183,7 +183,6 @@
     // Fixed position elements need to be composited and create stacking contexts
     // in order to be scrolled by the ScrollingCoordinator.
     settings.setAcceleratedCompositingForFixedPositionEnabled(settings.acceleratedCompositingEnabled());
-    settings.setFixedPositionCreatesStackingContext(settings.acceleratedCompositingEnabled());
 #endif
 
     m_alwaysUseCompositing = settings.acceleratedCompositingEnabled() && settings.forceCompositingMode();

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (213565 => 213566)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2017-03-08 05:46:52 UTC (rev 213566)
@@ -1681,7 +1681,6 @@
 #endif
 #if USE(COORDINATED_GRAPHICS)
     m_page->settings().setAcceleratedCompositingForFixedPositionEnabled(fixed);
-    m_page->settings().setFixedPositionCreatesStackingContext(fixed);
     m_page->settings().setDelegatesPageScaling(fixed);
     m_page->settings().setScrollingCoordinatorEnabled(fixed);
 #endif

Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm (213565 => 213566)


--- trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm	2017-03-08 05:46:52 UTC (rev 213566)
@@ -177,7 +177,6 @@
     // Fixed position elements need to be composited and create stacking contexts
     // in order to be scrolled by the ScrollingCoordinator.
     settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    settings.setFixedPositionCreatesStackingContext(true);
 
     m_rootLayer->setShowDebugBorder(settings.showDebugBorders());
 

Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (213565 => 213566)


--- trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2017-03-08 05:18:35 UTC (rev 213565)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2017-03-08 05:46:52 UTC (rev 213566)
@@ -202,11 +202,8 @@
 #endif
 
     // Fixed position elements need to be composited and create stacking contexts
-    // in order to be scrolled by the ScrollingCoordinator. We also want to keep
-    // Settings:setFixedPositionCreatesStackingContext() enabled for iOS. See
-    // <rdar://problem/9813262> for more details.
+    // in order to be scrolled by the ScrollingCoordinator.
     settings.setAcceleratedCompositingForFixedPositionEnabled(true);
-    settings.setFixedPositionCreatesStackingContext(true);
 
     if (MainFrame* mainFrame = m_webPage.mainFrame())
         DebugPageOverlays::settingsChanged(*mainFrame);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to