Index: third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp |
diff --git a/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp b/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp |
index bb2dbd3ec545c858ec8adc75c99d67fb12697fc8..9305698260901b2baec3e3f1c3c8ae25b0c29ac4 100644 |
--- a/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp |
+++ b/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp |
@@ -199,72 +199,6 @@ LayoutRect MultiColumnFragmentainerGroup::fragmentsBoundingBox(const LayoutRect& |
return unionRect(startColumnRect, endColumnRect); |
} |
-void MultiColumnFragmentainerGroup::collectLayerFragments(PaintLayerFragments& fragments, const LayoutRect& layerBoundingBox, const LayoutRect& dirtyRect) const |
-{ |
- // |layerBoundingBox| is in the flow thread coordinate space, relative to the top/left edge of |
- // the flow thread, but note that it has been converted with respect to writing mode (so that |
- // it's visual/physical in that sense). |
- // |
- // |dirtyRect| is visual, relative to the multicol container. |
- // |
- // Then there's the output from this method - the stuff we put into the list of fragments. The |
- // fragment.paginationOffset point is the actual visual translation required to get from a |
- // location in the flow thread to a location in a given column. The fragment.paginationClip |
- // rectangle, on the other hand, is in flow thread coordinates, but otherwise completely |
- // physical in terms of writing mode. |
- |
- LayoutMultiColumnFlowThread* flowThread = m_columnSet.multiColumnFlowThread(); |
- bool isHorizontalWritingMode = m_columnSet.isHorizontalWritingMode(); |
- |
- // Put the layer bounds into flow thread-local coordinates by flipping it first. Since we're in |
- // a layoutObject, most rectangles are represented this way. |
- LayoutRect layerBoundsInFlowThread(layerBoundingBox); |
- flowThread->flipForWritingMode(layerBoundsInFlowThread); |
- |
- // Now we can compare with the flow thread portions owned by each column. First let's |
- // see if the rect intersects our flow thread portion at all. |
- LayoutRect clippedRect(layerBoundsInFlowThread); |
- clippedRect.intersect(m_columnSet.flowThreadPortionOverflowRect()); |
- if (clippedRect.isEmpty()) |
- return; |
- |
- // Now we know we intersect at least one column. Let's figure out the logical top and logical |
- // bottom of the area we're checking. |
- LayoutUnit layerLogicalTop = isHorizontalWritingMode ? layerBoundsInFlowThread.y() : layerBoundsInFlowThread.x(); |
- LayoutUnit layerLogicalBottom = (isHorizontalWritingMode ? layerBoundsInFlowThread.maxY() : layerBoundsInFlowThread.maxX()); |
- |
- // Figure out the start and end columns for the layer and only check within that range so that |
- // we don't walk the entire column row. |
- unsigned startColumn; |
- unsigned endColumn; |
- columnIntervalForBlockRangeInFlowThread(layerLogicalTop, layerLogicalBottom, startColumn, endColumn); |
- |
- // Now intersect with the columns actually occupied by the dirty rect, to narrow it down even further. |
- unsigned firstColumnInDirtyRect, lastColumnInDirtyRect; |
- columnIntervalForVisualRect(dirtyRect, firstColumnInDirtyRect, lastColumnInDirtyRect); |
- if (firstColumnInDirtyRect > endColumn || lastColumnInDirtyRect < startColumn) |
- return; // The two column intervals are disjoint. There's nothing to collect. |
- if (startColumn < firstColumnInDirtyRect) |
- startColumn = firstColumnInDirtyRect; |
- if (endColumn > lastColumnInDirtyRect) |
- endColumn = lastColumnInDirtyRect; |
- ASSERT(endColumn >= startColumn); |
- |
- for (unsigned i = startColumn; i <= endColumn; i++) { |
- PaintLayerFragment fragment; |
- |
- // Set the physical translation offset. |
- fragment.paginationOffset = toLayoutPoint(flowThreadTranslationAtOffset(logicalTopInFlowThreadAt(i), CoordinateSpaceConversion::Visual)); |
- |
- // Set the overflow clip rect that corresponds to the column. |
- fragment.paginationClip = flowThreadPortionOverflowRectAt(i); |
- // Flip it into more a physical (PaintLayer-style) rectangle. |
- flowThread->flipForWritingMode(fragment.paginationClip); |
- |
- fragments.append(fragment); |
- } |
-} |
- |
LayoutRect MultiColumnFragmentainerGroup::calculateOverflow() const |
{ |
// Note that we just return the bounding rectangle of the column boxes here. We currently don't |