Title: [142740] branches/chromium/1364
Revision
142740
Author
[email protected]
Date
2013-02-13 06:03:12 -0800 (Wed, 13 Feb 2013)

Log Message

Merge 141769
> Disable -webkit-overflow-scrolling CSS attribute on Chromium
> https://bugs.webkit.org/show_bug.cgi?id=108020
> 
> Patch by Sami Kyostila <[email protected]> on 2013-02-04
> Reviewed by James Robinson.
> 
> Now that we can automatically promote overflow elements to accelerated
> scrolling layers there is no use for the -webkit-overflow-scrolling CSS
> attribute any longer on Chromium.
> 
> Source/WebKit/chromium:
> 
> This patch enables composited overflow scrolling in
> ScrollingCoordinatorChromiumTest. Because this also causes the overflow div
> in non-fast-scrollable.html to become composited, we also need to modify that
> test to opt it out of composited scrolling.
> 
> * features.gypi:
> * tests/ScrollingCoordinatorChromiumTest.cpp:
> (WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
> (WebKit::TEST_F):
> * tests/data/non-fast-scrollable.html:
> * tests/data/overflow-scrolling.html: Renamed from Source/WebKit/chromium/tests/data/touch-overflow-scrolling.html.
> 
> LayoutTests:
> 
> The following tests using -webkit-overflow-scroll are modified to also call
> setAcceleratedCompositingForOverflowScrollEnabled(). This makes them test
> meaningful things on also on platforms that do not support that CSS attribute.
> 
> * compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor.html:
> * compositing/overflow/iframe-inside-overflow-clipping.html:
> * compositing/overflow/nested-scrolling.html:
> * compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor.html:
> * compositing/overflow/scrolling-content-clip-to-viewport.html:
> * compositing/overflow/scrolling-without-painting.html:
> * compositing/overflow/textarea-scroll-touch.html:
> * compositing/overflow/updating-scrolling-content.html:
> * platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch-expected.txt: Removed.
> * platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch.html: Removed.
> * platform/chromium-linux/compositing/overflow/nested-scrolling-expected.png:
> * platform/chromium/TestExpectations:
> * platform/chromium/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt: Removed.
> * platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.png: Removed.
> * platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.txt: Removed.
> * platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context.html: Removed.
> * platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Removed.

[email protected]
Review URL: https://codereview.chromium.org/12254005

Modified Paths

Added Paths

Removed Paths

Diff

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -22,6 +22,10 @@
       height: 100px;
     }
   </style>
+  <script>
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+  </script>
 </head>
 
 <body>

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/iframe-inside-overflow-clipping.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/iframe-inside-overflow-clipping.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/iframe-inside-overflow-clipping.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -30,6 +30,8 @@
   <script>
     if (window.testRunner)
       testRunner.dumpAsText();
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
   </script>
 </head>
 

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/nested-scrolling.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/nested-scrolling.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/nested-scrolling.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -29,6 +29,10 @@
       margin-bottom: 3em;
     }
   </style>
+  <script>
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+  </script>
 </head>
 <body>
 

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -21,6 +21,10 @@
       background-color: red;
     }
   </style>
+  <script>
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+  </script>
 </head>
 
 <body>

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-content-clip-to-viewport.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-content-clip-to-viewport.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-content-clip-to-viewport.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -28,6 +28,8 @@
   <script>
     if (window.testRunner)
       testRunner.dumpAsText();
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
 
     window.addEventListener('load', function() {
       if (window.testRunner)

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-without-painting.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-without-painting.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/scrolling-without-painting.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -22,6 +22,9 @@
     }
   </style>
   <script type="text/_javascript_">
+      if (window.internals)
+          window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+
       window.addEventListener('load', function() {
           if (!window.testRunner || !window.internals) {
               alert('This test requires testRunner to run!');

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/textarea-scroll-touch.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/textarea-scroll-touch.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/textarea-scroll-touch.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -19,6 +19,9 @@
     if (window.testRunner)
       testRunner.dumpAsText();
 
+    if (window.internals)
+      window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+
     function testScrollability(element)
     {
       // This will cause scrollable element content layers to be offset by y=50 with respect to their scrolling container.

Modified: branches/chromium/1364/LayoutTests/compositing/overflow/updating-scrolling-content.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/compositing/overflow/updating-scrolling-content.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/compositing/overflow/updating-scrolling-content.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -26,6 +26,9 @@
     }
   </style>
   <script type="text/_javascript_">
+      if (window.internals)
+          window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true);
+
       window.addEventListener('load', function() {
           if (!window.testRunner || !window.internals) {
               alert('This test requires testRunner to run!');

Modified: branches/chromium/1364/LayoutTests/platform/chromium/TestExpectations (142739 => 142740)


--- branches/chromium/1364/LayoutTests/platform/chromium/TestExpectations	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/platform/chromium/TestExpectations	2013-02-13 14:03:12 UTC (rev 142740)
@@ -3374,8 +3374,6 @@
 
 webkit.org/b/84847 [ Win Release ] inspector/timeline/timeline-start-time.html [ Failure Pass ]
 
-crbug.com/128325 platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context.html [ Failure ]
-
 webkit.org/b/85106 tables/mozilla/other/slashlogo.html [ Pass Slow ]
 
 webkit.org/b/85174 fast/files/blob-constructor.html [ Failure ]
@@ -3717,20 +3715,9 @@
 webkit.org/b/99734 [ Mac ] http/tests/xmlhttprequest/request-encoding2.html [ Pass Timeout ]
 
 # ENABLE_ACCELERATED_OVERFLOW_SCROLLING is not currently enabled in Chromium.
-webkit.org/b/94353 compositing/overflow/scrolling-content-clip-to-viewport.html [ Failure ]
-webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/scrolling-content-clip-to-viewport.html [ Failure ]
-webkit.org/b/94353 platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-content-clip-to-viewport.html [ Failure ]
-webkit.org/b/94353 compositing/overflow/scrolling-without-painting.html [ Failure ]
-webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting.html [ Failure ]
-webkit.org/b/94353 compositing/overflow/updating-scrolling-content.html [ Failure ]
-webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content.html [ Failure ]
-webkit.org/b/94353 compositing/overflow/textarea-scroll-touch.html [ Failure ]
-webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch.html [ Failure ]
-
-# Failing on Linux (Content Shell) only now
-webkit.org/b/94353 [ Android Linux ] compositing/overflow/nested-scrolling.html [ Failure Pass ]
-webkit.org/b/94353 [ Android Linux ] platform/chromium/virtual/softwarecompositing/overflow/nested-scrolling.html [ Failure Pass ]
+webkit.org/b/94353 compositing/overflow/overflow-auto-with-touch-toggle.html [ Failure ]
 webkit.org/b/94353 compositing/overflow/overflow-auto-with-touch.html [ Failure ]
+webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/overflow-auto-with-touch-toggle.html [ Failure ]
 webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/overflow-auto-with-touch.html [ Failure ]
 webkit.org/b/94353 compositing/overflow/overflow-overlay-with-touch.html [ Failure ]
 webkit.org/b/94353 platform/chromium/virtual/softwarecompositing/overflow/overflow-overlay-with-touch.html [ Failure ]

Deleted: branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt (142739 => 142740)


--- branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt	2013-02-13 14:03:12 UTC (rev 142740)
@@ -1 +0,0 @@
-

Deleted: branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.png


(Binary files differ)

Deleted: branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.txt (142739 => 142740)


--- branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.txt	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context-expected.txt	2013-02-13 14:03:12 UTC (rev 142740)
@@ -1,11 +0,0 @@
-layer at (0,0) size 800x600
-  RenderView at (0,0) size 800x600
-layer at (0,0) size 800x8
-  RenderBlock {HTML} at (0,0) size 800x8
-    RenderBody {BODY} at (8,8) size 784x0
-layer at (8,8) size 50x50
-  RenderBlock (positioned) {DIV} at (8,8) size 50x50
-layer at (8,8) size 50x50
-  RenderBlock (positioned) zI: 1 {DIV} at (0,0) size 50x50 [bgcolor=#FF0000]
-layer at (8,8) size 50x50
-  RenderBlock (positioned) {DIV} at (8,8) size 50x50 [bgcolor=#008000]

Deleted: branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/platform/chromium/compositing/overflow/overflow-scrolling-touch-stacking-context.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-<head>
-  <style type="text/css">
-    .box {
-      position: absolute;
-      width: 50px;
-      height: 50px;
-    }
-
-    .scrollable {
-      -webkit-overflow-scrolling: touch;
-    }
-
-    .indicator {
-      background: red;
-      z-index: 1;
-    }
-
-    .test {
-      background: green;
-    }
-  </style>
-</head>
-<body>
-
-  <!-- Check that touch overflow scrollable elements get a stacking context. -->
-  <div class="scrollable box">
-    <div class="indicator box"></div>
-  </div>
-  <div class="test box"></div>
-
-</body>
-</html>

Deleted: branches/chromium/1364/LayoutTests/platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch.html (142739 => 142740)


--- branches/chromium/1364/LayoutTests/platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/LayoutTests/platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -1,61 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-  <style>
-    .trigger {
-      width: 200px;
-      height: 200px;
-      background-color: blue;
-      -webkit-transform: translateZ(0);
-    }
-
-    .overflow-scrolling-touch {
-      width: 200px;
-      height: 200px;
-      position: absolute;
-      top: 0px;
-      left: 0px;
-      overflow: scroll;
-      -webkit-overflow-scrolling: touch;
-      background-color: blue;
-    }
-
-    .content {
-      width: 1000px;
-      height: 1000px;
-      position: relative;
-      top: 50px;
-      left: 50px;
-      background-color: green;
-    }
-  </style>
-
-  <script type="text/_javascript_" charset="utf-8">
-    if (window.layoutTestController) {
-      layoutTestController.dumpAsText();
-      layoutTestController.waitUntilDone();
-    }
-
-    function doTest()
-    {
-      if (window.layoutTestController) {
-        document.getElementById('layers').innerText = window.internals.layerTreeAsText(document);
-        layoutTestController.notifyDone();
-      }
-    }
-
-    window.addEventListener('load', doTest, false);
-  </script>
-</head>
-
-<body>
-  <div class="trigger"></div>
-
-  <div class="overflow-scrolling-touch">
-    <div class="content"></div>
-  </div>
-
-  <pre id="layers">Layer tree goes here in DRT</pre>
-</body>
-</html>
-

Modified: branches/chromium/1364/LayoutTests/platform/chromium-linux/compositing/overflow/nested-scrolling-expected.png


(Binary files differ)

Modified: branches/chromium/1364/Source/WebKit/chromium/features.gypi (142739 => 142740)


--- branches/chromium/1364/Source/WebKit/chromium/features.gypi	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/Source/WebKit/chromium/features.gypi	2013-02-13 14:03:12 UTC (rev 142740)
@@ -159,7 +159,6 @@
     'conditions': [
       ['OS=="android"', {
         'feature_defines': [
-          'ENABLE_ACCELERATED_OVERFLOW_SCROLLING=1',
           'ENABLE_CALENDAR_PICKER=0',
           'ENABLE_DATALIST_ELEMENT=0',
           'ENABLE_FAST_MOBILE_SCROLLING=1',
@@ -183,7 +182,6 @@
         'enable_touch_icon_loading': 1,
       }, { # OS!="android"
         'feature_defines': [
-          'ENABLE_ACCELERATED_OVERFLOW_SCROLLING=0',
           'ENABLE_CALENDAR_PICKER=1',
           'ENABLE_DATALIST_ELEMENT=1',
           'ENABLE_INPUT_SPEECH=1',

Modified: branches/chromium/1364/Source/WebKit/chromium/tests/ScrollingCoordinatorChromiumTest.cpp (142739 => 142740)


--- branches/chromium/1364/Source/WebKit/chromium/tests/ScrollingCoordinatorChromiumTest.cpp	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/Source/WebKit/chromium/tests/ScrollingCoordinatorChromiumTest.cpp	2013-02-13 14:03:12 UTC (rev 142740)
@@ -43,9 +43,7 @@
 #include <public/WebLayer.h>
 #include <webkit/support/webkit_support.h>
 
-#if ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
 #include "GraphicsLayerChromium.h"
-#endif
 
 using namespace WebCore;
 using namespace WebKit;
@@ -78,6 +76,7 @@
         m_webViewImpl->settings()->setForceCompositingMode(true);
         m_webViewImpl->settings()->setAcceleratedCompositingEnabled(true);
         m_webViewImpl->settings()->setAcceleratedCompositingForFixedPositionEnabled(true);
+        m_webViewImpl->settings()->setAcceleratedCompositingForOverflowScrollEnabled(true);
         m_webViewImpl->settings()->setFixedPositionCreatesStackingContext(true);
         m_webViewImpl->initializeMainFrame(&m_mockWebFrameClient);
         m_webViewImpl->resize(IntSize(320, 240));
@@ -196,11 +195,10 @@
     ASSERT_EQ(0u, rootScrollLayer->nonFastScrollableRegion().size());
 }
 
-#if ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
-TEST_F(ScrollingCoordinatorChromiumTest, touchOverflowScrolling)
+TEST_F(ScrollingCoordinatorChromiumTest, overflowScrolling)
 {
-    registerMockedHttpURLLoad("touch-overflow-scrolling.html");
-    navigateTo(m_baseURL + "touch-overflow-scrolling.html");
+    registerMockedHttpURLLoad("overflow-scrolling.html");
+    navigateTo(m_baseURL + "overflow-scrolling.html");
 
     // Verify the properties of the accelerated scrolling element starting from the RenderObject
     // all the way to the WebLayer.
@@ -225,6 +223,5 @@
     WebLayer* webScrollLayer = static_cast<WebLayer*>(layerBacking->scrollingContentsLayer()->platformLayer());
     ASSERT_TRUE(webScrollLayer->scrollable());
 }
-#endif // ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
 
 } // namespace

Modified: branches/chromium/1364/Source/WebKit/chromium/tests/data/non-fast-scrollable.html (142739 => 142740)


--- branches/chromium/1364/Source/WebKit/chromium/tests/data/non-fast-scrollable.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/Source/WebKit/chromium/tests/data/non-fast-scrollable.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -2,17 +2,23 @@
 <html>
 <head>
   <style type="text/css">
-    .scrollable {
+    .box {
       width: 10px;
       height: 10px;
+    }
+    .scrollable {
       overflow: scroll;
     }
+    .out-of-flow {
+      position: absolute;
+    }
   </style>
 </head>
 
 <body>
-  <div class="scrollable">
+  <div class="scrollable box">
     Scrolling content.
+    <div class="out-of-flow box">Out-of-flow content.</div>
   </div>
 </body>
 </html>

Copied: branches/chromium/1364/Source/WebKit/chromium/tests/data/overflow-scrolling.html (from rev 141769, trunk/Source/WebKit/chromium/tests/data/overflow-scrolling.html) (0 => 142740)


--- branches/chromium/1364/Source/WebKit/chromium/tests/data/overflow-scrolling.html	                        (rev 0)
+++ branches/chromium/1364/Source/WebKit/chromium/tests/data/overflow-scrolling.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <style type="text/css">
+    #scrollable {
+      width: 10px;
+      height: 10px;
+      overflow: scroll;
+    }
+    .content {
+      width: 100px;
+      height: 1000px;
+    }
+  </style>
+</head>
+
+<body>
+  <div id="scrollable">
+    <div class="content"></div>
+  </div>
+</body>
+</html>

Deleted: branches/chromium/1364/Source/WebKit/chromium/tests/data/touch-overflow-scrolling.html (142739 => 142740)


--- branches/chromium/1364/Source/WebKit/chromium/tests/data/touch-overflow-scrolling.html	2013-02-13 13:45:05 UTC (rev 142739)
+++ branches/chromium/1364/Source/WebKit/chromium/tests/data/touch-overflow-scrolling.html	2013-02-13 14:03:12 UTC (rev 142740)
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-  <style type="text/css">
-    #scrollable {
-      width: 10px;
-      height: 10px;
-      overflow: scroll;
-      -webkit-overflow-scrolling: touch;
-    }
-    .content {
-      width: 100px;
-      height: 1000px;
-    }
-  </style>
-</head>
-
-<body>
-  <div id="scrollable">
-    <div class="content"></div>
-  </div>
-</body>
-</html>
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to