Index: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp |
diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp |
index a53a7603bd935af6e556c0e1855197b420c4c62f..6041079e9fc0239551ff9cf3c13c68c1d41a5929 100644 |
--- a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp |
+++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp |
@@ -2859,9 +2859,9 @@ GapRects LayoutBlockFlow::blockSelectionGaps(const LayoutBlock* rootBlock, const |
getSelectionGapInfo(childState, leftGap, rightGap); |
if (leftGap) |
- result.uniteLeft(logicalLeftSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, this, curr->logicalLeft(), curr->logicalTop(), curr->logicalHeight(), paintInfo)); |
+ result.uniteLeft(logicalLeftSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, LineLayoutItem(const_cast<LayoutBlockFlow*>(this)), curr->logicalLeft(), curr->logicalTop(), curr->logicalHeight(), paintInfo)); |
dgrogan
2016/01/27 22:32:03
The const_cast is gross but at least there's prece
eae
2016/01/27 22:34:37
Eww, that's pretty gross. We should be able to rem
|
if (rightGap) |
- result.uniteRight(logicalRightSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, this, curr->logicalRight(), curr->logicalTop(), curr->logicalHeight(), paintInfo)); |
+ result.uniteRight(logicalRightSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, LineLayoutItem(const_cast<LayoutBlockFlow*>(this)), curr->logicalRight(), curr->logicalTop(), curr->logicalHeight(), paintInfo)); |
// Update lastLogicalTop to be just underneath the object. lastLogicalLeft and lastLogicalRight extend as far as |
// they can without bumping into floating or positioned objects. Ideally they will go right up |
@@ -2879,7 +2879,7 @@ GapRects LayoutBlockFlow::blockSelectionGaps(const LayoutBlock* rootBlock, const |
} |
LayoutRect LayoutBlockFlow::logicalLeftSelectionGap(const LayoutBlock* rootBlock, const LayoutPoint& rootBlockPhysicalPosition, const LayoutSize& offsetFromRootBlock, |
- const LayoutObject* selObj, LayoutUnit logicalLeft, LayoutUnit logicalTop, LayoutUnit logicalHeight, const PaintInfo* paintInfo) const |
+ const LineLayoutItem selObj, LayoutUnit logicalLeft, LayoutUnit logicalTop, LayoutUnit logicalHeight, const PaintInfo* paintInfo) const |
{ |
LayoutUnit rootBlockLogicalTop = rootBlock->blockDirectionOffset(offsetFromRootBlock) + logicalTop; |
LayoutUnit rootBlockLogicalLeft = std::max(logicalLeftSelectionOffset(rootBlock, logicalTop), logicalLeftSelectionOffset(rootBlock, logicalTop + logicalHeight)); |
@@ -2891,13 +2891,13 @@ LayoutRect LayoutBlockFlow::logicalLeftSelectionGap(const LayoutBlock* rootBlock |
LayoutRect gapRect = rootBlock->logicalRectToPhysicalRect(rootBlockPhysicalPosition, LayoutRect(rootBlockLogicalLeft, rootBlockLogicalTop, rootBlockLogicalWidth, logicalHeight)); |
if (paintInfo) { |
IntRect selectionGapRect = alignSelectionRectToDevicePixels(gapRect); |
- paintInfo->context.fillRect(selectionGapRect, selObj->selectionBackgroundColor()); |
+ paintInfo->context.fillRect(selectionGapRect, selObj.selectionBackgroundColor()); |
} |
return gapRect; |
} |
LayoutRect LayoutBlockFlow::logicalRightSelectionGap(const LayoutBlock* rootBlock, const LayoutPoint& rootBlockPhysicalPosition, const LayoutSize& offsetFromRootBlock, |
- const LayoutObject* selObj, LayoutUnit logicalRight, LayoutUnit logicalTop, LayoutUnit logicalHeight, const PaintInfo* paintInfo) const |
+ const LineLayoutItem selObj, LayoutUnit logicalRight, LayoutUnit logicalTop, LayoutUnit logicalHeight, const PaintInfo* paintInfo) const |
{ |
LayoutUnit rootBlockLogicalTop = rootBlock->blockDirectionOffset(offsetFromRootBlock) + logicalTop; |
LayoutUnit rootBlockLogicalLeft = std::max(rootBlock->inlineDirectionOffset(offsetFromRootBlock) + logicalRight, max(logicalLeftSelectionOffset(rootBlock, logicalTop), logicalLeftSelectionOffset(rootBlock, logicalTop + logicalHeight))); |
@@ -2909,7 +2909,7 @@ LayoutRect LayoutBlockFlow::logicalRightSelectionGap(const LayoutBlock* rootBloc |
LayoutRect gapRect = rootBlock->logicalRectToPhysicalRect(rootBlockPhysicalPosition, LayoutRect(rootBlockLogicalLeft, rootBlockLogicalTop, rootBlockLogicalWidth, logicalHeight)); |
if (paintInfo) { |
IntRect selectionGapRect = alignSelectionRectToDevicePixels(gapRect); |
- paintInfo->context.fillRect(selectionGapRect, selObj->selectionBackgroundColor()); |
+ paintInfo->context.fillRect(selectionGapRect, selObj.selectionBackgroundColor()); |
} |
return gapRect; |
} |