Unreviewed, rolling out r109981.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2012 21:58:43 +0000 (21:58 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2012 21:58:43 +0000 (21:58 +0000)
http://trac.webkit.org/changeset/109981
https://bugs.webkit.org/show_bug.cgi?id=84630

Broke Twitter map buddy icon (see
https://bugs.webkit.org/show_bug.cgi?id=84558) (Requested by
thorton on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-04-23

Source/WebCore:

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):

LayoutTests:

* compositing/layer-creation/overlap-empty-layer-expected.txt: Removed.
* compositing/layer-creation/overlap-empty-layer.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@114950 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/compositing/layer-creation/overlap-empty-layer-expected.txt [deleted file]
LayoutTests/compositing/layer-creation/overlap-empty-layer.html [deleted file]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderLayerCompositor.cpp

index 55545f5..4505308 100644 (file)
@@ -1,5 +1,18 @@
 2012-04-23  Sheriff Bot  <webkit.review.bot@gmail.com>
 
+        Unreviewed, rolling out r109981.
+        http://trac.webkit.org/changeset/109981
+        https://bugs.webkit.org/show_bug.cgi?id=84630
+
+        Broke Twitter map buddy icon (see
+        https://bugs.webkit.org/show_bug.cgi?id=84558) (Requested by
+        thorton on #webkit).
+
+        * compositing/layer-creation/overlap-empty-layer-expected.txt: Removed.
+        * compositing/layer-creation/overlap-empty-layer.html: Removed.
+
+2012-04-23  Sheriff Bot  <webkit.review.bot@gmail.com>
+
         Unreviewed, rolling out r114929.
         http://trac.webkit.org/changeset/114929
         https://bugs.webkit.org/show_bug.cgi?id=84623
diff --git a/LayoutTests/compositing/layer-creation/overlap-empty-layer-expected.txt b/LayoutTests/compositing/layer-creation/overlap-empty-layer-expected.txt
deleted file mode 100644 (file)
index 9b548c2..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-(GraphicsLayer
-  (bounds 842.00 600.00)
-  (children 1
-    (GraphicsLayer
-      (bounds 842.00 600.00)
-      (children 1
-        (GraphicsLayer
-          (position 8.00 8.00)
-          (bounds 784.00 0.00)
-          (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [50.00 50.00 0.00 1.00])
-          (children 1
-            (GraphicsLayer
-              (position 200.00 200.00)
-              (bounds 80.00 80.00)
-              (drawsContent 1)
-            )
-          )
-        )
-      )
-    )
-  )
-)
-
diff --git a/LayoutTests/compositing/layer-creation/overlap-empty-layer.html b/LayoutTests/compositing/layer-creation/overlap-empty-layer.html
deleted file mode 100644 (file)
index 0fe2042..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
-<head>
-<style>
-    body {
-        overflow: hidden;
-    }
-
-    #container {
-        -webkit-transform: translate(50px, 50px);
-    }
-
-    #composited {
-        -webkit-transform:translateZ(0);
-        position:absolute;
-        top: 200px;
-        left: 200px;
-        width: 80px;
-        height: 80px;
-        background-color: blue;
-    }
-
-    #overlap {
-        position: absolute;
-        top: 0px;
-        left: 0px;
-        width: 100px;
-        height: 100px;
-        background-color: blue;
-    }
-</style>
-<script>
-    if (window.layoutTestController) {
-        layoutTestController.dumpAsText(false);
-        window.addEventListener('load', function() {
-            document.getElementById("layertree").innerText = layoutTestController.layerTreeAsText();
-        }, false);
-    }
-</script>
-</head>
-<body>
-    <div id="container">
-        <div id="composited"></div>
-    </div>
-
-    <!-- This overlaps all of container, but not the composited child. -->
-    <!-- It should not get its own composited layer. -->
-    <div id="overlap"></div>
-
-    <pre id="layertree"></pre>
-</body>
-</html>
index 04ad9ee..e9be46c 100644 (file)
@@ -1,3 +1,17 @@
+2012-04-23  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r109981.
+        http://trac.webkit.org/changeset/109981
+        https://bugs.webkit.org/show_bug.cgi?id=84630
+
+        Broke Twitter map buddy icon (see
+        https://bugs.webkit.org/show_bug.cgi?id=84558) (Requested by
+        thorton on #webkit).
+
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::addToOverlapMap):
+        (WebCore::RenderLayerCompositor::computeCompositingRequirements):
+
 2012-04-23  Emil A Eklund  <eae@chromium.org>
 
         Crash in RenderInline::clippedOverflowRectForRepaint for PrintPreview
index b3025ab..37b5ff7 100644 (file)
@@ -565,12 +565,12 @@ void RenderLayerCompositor::addToOverlapMap(OverlapMap& overlapMap, RenderLayer*
 
     if (!boundsComputed) {
         layerBounds = layer->renderer()->localToAbsoluteQuad(FloatRect(layer->localBoundingBox())).enclosingBoundingBox();
+        // Empty rects never intersect, but we need them to for the purposes of overlap testing.
+        if (layerBounds.isEmpty())
+            layerBounds.setSize(IntSize(1, 1));
         boundsComputed = true;
     }
 
-    if (layerBounds.isEmpty())
-        return;
-
     IntRect clipRect = pixelSnappedIntRect(layer->backgroundClipRect(rootRenderLayer(), 0, true).rect()); // FIXME: Incorrect for CSS regions.
     clipRect.scale(pageScaleFactor());
     clipRect.intersect(layerBounds);
@@ -646,6 +646,8 @@ void RenderLayerCompositor::computeCompositingRequirements(RenderLayer* layer, O
         // If we're testing for overlap, we only need to composite if we overlap something that is already composited.
         absBounds = layer->renderer()->localToAbsoluteQuad(FloatRect(layer->localBoundingBox())).enclosingBoundingBox();
         // Empty rects never intersect, but we need them to for the purposes of overlap testing.
+        if (absBounds.isEmpty())
+            absBounds.setSize(IntSize(1, 1));
         haveComputedBounds = true;
         mustOverlapCompositedLayers = overlapMap->overlapsLayers(absBounds);
     }