Index: third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp |
diff --git a/third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp b/third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp |
index cb498b86dc1bd48dfd61d72fc629d58e86486696..0554155f95e67b9975b0661782897c85e847cd9a 100644 |
--- a/third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp |
+++ b/third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp |
@@ -46,7 +46,7 @@ void InlineFlowBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
// Paint our children. |
PaintInfo childInfo(paintInfo); |
for (InlineBox* curr = m_inlineFlowBox.firstChild(); curr; curr = curr->nextOnLine()) { |
- if (curr->lineLayoutItem().isText() || !curr->boxModelObject().hasSelfPaintingLayer()) |
+ if (curr->getLineLayoutItem().isText() || !curr->boxModelObject().hasSelfPaintingLayer()) |
curr->paint(childInfo, paintOffset, lineTop, lineBottom); |
} |
} |
@@ -65,9 +65,9 @@ void InlineFlowBoxPainter::paintFillLayer(const PaintInfo& paintInfo, const Colo |
LayoutBoxModelObject* boxModel = toLayoutBoxModelObject(LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.boxModelObject())); |
StyleImage* img = fillLayer.image(); |
bool hasFillImage = img && img->canRender(); |
- if ((!hasFillImage && !m_inlineFlowBox.lineLayoutItem().style()->hasBorderRadius()) || (!m_inlineFlowBox.prevLineBox() && !m_inlineFlowBox.nextLineBox()) || !m_inlineFlowBox.parent()) { |
+ if ((!hasFillImage && !m_inlineFlowBox.getLineLayoutItem().style()->hasBorderRadius()) || (!m_inlineFlowBox.prevLineBox() && !m_inlineFlowBox.nextLineBox()) || !m_inlineFlowBox.parent()) { |
BoxPainter::paintFillLayer(*boxModel, paintInfo, c, fillLayer, rect, BackgroundBleedNone, &m_inlineFlowBox, rect.size(), op); |
- } else if (m_inlineFlowBox.lineLayoutItem().style()->boxDecorationBreak() == DCLONE) { |
+ } else if (m_inlineFlowBox.getLineLayoutItem().style()->boxDecorationBreak() == DCLONE) { |
GraphicsContextStateSaver stateSaver(paintInfo.context); |
paintInfo.context.clip(pixelSnappedIntRect(rect)); |
BoxPainter::paintFillLayer(*boxModel, paintInfo, c, fillLayer, rect, BackgroundBleedNone, &m_inlineFlowBox, rect.size(), op); |
@@ -75,7 +75,7 @@ void InlineFlowBoxPainter::paintFillLayer(const PaintInfo& paintInfo, const Colo |
// We have a fill image that spans multiple lines. |
// FIXME: frameSize ought to be the same as rect.size(). |
LayoutSize frameSize(m_inlineFlowBox.width(), m_inlineFlowBox.height()); |
- LayoutRect imageStripPaintRect = paintRectForImageStrip(rect.location(), frameSize, m_inlineFlowBox.lineLayoutItem().style()->direction()); |
+ LayoutRect imageStripPaintRect = paintRectForImageStrip(rect.location(), frameSize, m_inlineFlowBox.getLineLayoutItem().style()->direction()); |
GraphicsContextStateSaver stateSaver(paintInfo.context); |
// TODO(chrishtr): this should likely be pixel-snapped. |
paintInfo.context.clip(pixelSnappedIntRect(rect)); |
@@ -97,7 +97,7 @@ void InlineFlowBoxPainter::paintBoxShadow(const PaintInfo& info, const ComputedS |
static LayoutRect clipRectForNinePieceImageStrip(const InlineFlowBox& box, const NinePieceImage& image, const LayoutRect& paintRect) |
{ |
LayoutRect clipRect(paintRect); |
- const ComputedStyle& style = box.lineLayoutItem().styleRef(); |
+ const ComputedStyle& style = box.getLineLayoutItem().styleRef(); |
LayoutRectOutsets outsets = style.imageOutsets(image); |
if (box.isHorizontal()) { |
clipRect.setY(paintRect.y() - outsets.top()); |
@@ -155,8 +155,8 @@ LayoutRect InlineFlowBoxPainter::paintRectForImageStrip(const LayoutPoint& paint |
InlineFlowBoxPainter::BorderPaintingType InlineFlowBoxPainter::getBorderPaintType(const LayoutRect& adjustedFrameRect, IntRect& adjustedClipRect) const |
{ |
adjustedClipRect = pixelSnappedIntRect(adjustedFrameRect); |
- if (m_inlineFlowBox.parent() && m_inlineFlowBox.lineLayoutItem().style()->hasBorderDecoration()) { |
- const NinePieceImage& borderImage = m_inlineFlowBox.lineLayoutItem().style()->borderImage(); |
+ if (m_inlineFlowBox.parent() && m_inlineFlowBox.getLineLayoutItem().style()->hasBorderDecoration()) { |
+ const NinePieceImage& borderImage = m_inlineFlowBox.getLineLayoutItem().style()->borderImage(); |
StyleImage* borderImageSource = borderImage.image(); |
bool hasBorderImage = borderImageSource && borderImageSource->canRender(); |
if (hasBorderImage && !borderImageSource->isLoaded()) |
@@ -177,18 +177,18 @@ InlineFlowBoxPainter::BorderPaintingType InlineFlowBoxPainter::getBorderPaintTyp |
void InlineFlowBoxPainter::paintBoxDecorationBackground(const PaintInfo& paintInfo, const LayoutPoint& paintOffset, const LayoutRect& cullRect) |
{ |
ASSERT(paintInfo.phase == PaintPhaseForeground); |
- if (m_inlineFlowBox.lineLayoutItem().style()->visibility() != VISIBLE) |
+ if (m_inlineFlowBox.getLineLayoutItem().style()->visibility() != VISIBLE) |
return; |
// You can use p::first-line to specify a background. If so, the root line boxes for |
// a line may actually have to paint a background. |
- LayoutObject* inlineFlowBoxLayoutObject = LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.lineLayoutItem()); |
- const ComputedStyle* styleToUse = m_inlineFlowBox.lineLayoutItem().style(m_inlineFlowBox.isFirstLineStyle()); |
+ LayoutObject* inlineFlowBoxLayoutObject = LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.getLineLayoutItem()); |
+ const ComputedStyle* styleToUse = m_inlineFlowBox.getLineLayoutItem().style(m_inlineFlowBox.isFirstLineStyle()); |
bool shouldPaintBoxDecorationBackground; |
if (m_inlineFlowBox.parent()) |
shouldPaintBoxDecorationBackground = inlineFlowBoxLayoutObject->hasBoxDecorationBackground(); |
else |
- shouldPaintBoxDecorationBackground = m_inlineFlowBox.isFirstLineStyle() && styleToUse != m_inlineFlowBox.lineLayoutItem().style(); |
+ shouldPaintBoxDecorationBackground = m_inlineFlowBox.isFirstLineStyle() && styleToUse != m_inlineFlowBox.getLineLayoutItem().style(); |
if (!shouldPaintBoxDecorationBackground) |
return; |
@@ -222,7 +222,7 @@ void InlineFlowBoxPainter::paintBoxDecorationBackground(const PaintInfo& paintIn |
case DontPaintBorders: |
break; |
case PaintBordersWithoutClip: |
- BoxPainter::paintBorder(*toLayoutBoxModelObject(LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.boxModelObject())), paintInfo, adjustedFrameRect, m_inlineFlowBox.lineLayoutItem().styleRef(m_inlineFlowBox.isFirstLineStyle()), BackgroundBleedNone, m_inlineFlowBox.includeLogicalLeftEdge(), m_inlineFlowBox.includeLogicalRightEdge()); |
+ BoxPainter::paintBorder(*toLayoutBoxModelObject(LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.boxModelObject())), paintInfo, adjustedFrameRect, m_inlineFlowBox.getLineLayoutItem().styleRef(m_inlineFlowBox.isFirstLineStyle()), BackgroundBleedNone, m_inlineFlowBox.includeLogicalLeftEdge(), m_inlineFlowBox.includeLogicalRightEdge()); |
break; |
case PaintBordersWithClip: |
// FIXME: What the heck do we do with RTL here? The math we're using is obviously not right, |
@@ -230,14 +230,14 @@ void InlineFlowBoxPainter::paintBoxDecorationBackground(const PaintInfo& paintIn |
LayoutRect imageStripPaintRect = paintRectForImageStrip(adjustedPaintOffset, frameRect.size(), LTR); |
GraphicsContextStateSaver stateSaver(paintInfo.context); |
paintInfo.context.clip(adjustedClipRect); |
- BoxPainter::paintBorder(*toLayoutBoxModelObject(LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.boxModelObject())), paintInfo, imageStripPaintRect, m_inlineFlowBox.lineLayoutItem().styleRef(m_inlineFlowBox.isFirstLineStyle())); |
+ BoxPainter::paintBorder(*toLayoutBoxModelObject(LineLayoutAPIShim::layoutObjectFrom(m_inlineFlowBox.boxModelObject())), paintInfo, imageStripPaintRect, m_inlineFlowBox.getLineLayoutItem().styleRef(m_inlineFlowBox.isFirstLineStyle())); |
break; |
} |
} |
void InlineFlowBoxPainter::paintMask(const PaintInfo& paintInfo, const LayoutPoint& paintOffset) |
{ |
- if (m_inlineFlowBox.lineLayoutItem().style()->visibility() != VISIBLE || paintInfo.phase != PaintPhaseMask) |
+ if (m_inlineFlowBox.getLineLayoutItem().style()->visibility() != VISIBLE || paintInfo.phase != PaintPhaseMask) |
return; |
LayoutRect frameRect = frameRectClampedToLineTopAndBottomIfNeeded(); |
@@ -247,16 +247,16 @@ void InlineFlowBoxPainter::paintMask(const PaintInfo& paintInfo, const LayoutPoi |
m_inlineFlowBox.flipForWritingMode(localRect); |
LayoutPoint adjustedPaintOffset = paintOffset + localRect.location(); |
- const NinePieceImage& maskNinePieceImage = m_inlineFlowBox.lineLayoutItem().style()->maskBoxImage(); |
- StyleImage* maskBoxImage = m_inlineFlowBox.lineLayoutItem().style()->maskBoxImage().image(); |
+ const NinePieceImage& maskNinePieceImage = m_inlineFlowBox.getLineLayoutItem().style()->maskBoxImage(); |
+ StyleImage* maskBoxImage = m_inlineFlowBox.getLineLayoutItem().style()->maskBoxImage().image(); |
// Figure out if we need to push a transparency layer to render our mask. |
bool pushTransparencyLayer = false; |
- bool compositedMask = m_inlineFlowBox.lineLayoutItem().hasLayer() && m_inlineFlowBox.boxModelObject().layer()->hasCompositedMask(); |
+ bool compositedMask = m_inlineFlowBox.getLineLayoutItem().hasLayer() && m_inlineFlowBox.boxModelObject().layer()->hasCompositedMask(); |
bool flattenCompositingLayers = paintInfo.globalPaintFlags() & GlobalPaintFlattenCompositingLayers; |
SkXfermode::Mode compositeOp = SkXfermode::kSrcOver_Mode; |
if (!compositedMask || flattenCompositingLayers) { |
- if ((maskBoxImage && m_inlineFlowBox.lineLayoutItem().style()->maskLayers().hasImage()) || m_inlineFlowBox.lineLayoutItem().style()->maskLayers().next()) { |
+ if ((maskBoxImage && m_inlineFlowBox.getLineLayoutItem().style()->maskLayers().hasImage()) || m_inlineFlowBox.getLineLayoutItem().style()->maskLayers().next()) { |
pushTransparencyLayer = true; |
paintInfo.context.beginLayer(1.0f, SkXfermode::kDstIn_Mode); |
} else { |
@@ -270,7 +270,7 @@ void InlineFlowBoxPainter::paintMask(const PaintInfo& paintInfo, const LayoutPoi |
} |
LayoutRect paintRect = LayoutRect(adjustedPaintOffset, frameRect.size()); |
- paintFillLayers(paintInfo, Color::transparent, m_inlineFlowBox.lineLayoutItem().style()->maskLayers(), paintRect, compositeOp); |
+ paintFillLayers(paintInfo, Color::transparent, m_inlineFlowBox.getLineLayoutItem().style()->maskLayers(), paintRect, compositeOp); |
bool hasBoxImage = maskBoxImage && maskBoxImage->canRender(); |
if (!hasBoxImage || !maskBoxImage->isLoaded()) { |
@@ -283,7 +283,7 @@ void InlineFlowBoxPainter::paintMask(const PaintInfo& paintInfo, const LayoutPoi |
// The simple case is where we are the only box for this object. In those |
// cases only a single call to draw is required. |
if (!m_inlineFlowBox.prevLineBox() && !m_inlineFlowBox.nextLineBox()) { |
- BoxPainter::paintNinePieceImage(*boxModel, paintInfo.context, paintRect, m_inlineFlowBox.lineLayoutItem().styleRef(), maskNinePieceImage, compositeOp); |
+ BoxPainter::paintNinePieceImage(*boxModel, paintInfo.context, paintRect, m_inlineFlowBox.getLineLayoutItem().styleRef(), maskNinePieceImage, compositeOp); |
} else { |
// We have a mask image that spans multiple lines. |
// FIXME: What the heck do we do with RTL here? The math we're using is obviously not right, |
@@ -293,7 +293,7 @@ void InlineFlowBoxPainter::paintMask(const PaintInfo& paintInfo, const LayoutPoi |
GraphicsContextStateSaver stateSaver(paintInfo.context); |
// TODO(chrishtr): this should be pixel-snapped. |
paintInfo.context.clip(clipRect); |
- BoxPainter::paintNinePieceImage(*boxModel, paintInfo.context, imageStripPaintRect, m_inlineFlowBox.lineLayoutItem().styleRef(), maskNinePieceImage, compositeOp); |
+ BoxPainter::paintNinePieceImage(*boxModel, paintInfo.context, imageStripPaintRect, m_inlineFlowBox.getLineLayoutItem().styleRef(), maskNinePieceImage, compositeOp); |
} |
if (pushTransparencyLayer) |
@@ -305,7 +305,7 @@ LayoutRect InlineFlowBoxPainter::frameRectClampedToLineTopAndBottomIfNeeded() co |
{ |
LayoutRect rect(m_inlineFlowBox.frameRect()); |
- bool noQuirksMode = m_inlineFlowBox.lineLayoutItem().document().inNoQuirksMode(); |
+ bool noQuirksMode = m_inlineFlowBox.getLineLayoutItem().document().inNoQuirksMode(); |
if (!noQuirksMode && !m_inlineFlowBox.hasTextChildren() && !(m_inlineFlowBox.descendantsHaveSameLineHeightAndBaseline() && m_inlineFlowBox.hasTextDescendants())) { |
const RootInlineBox& rootBox = m_inlineFlowBox.root(); |
LayoutUnit logicalTop = m_inlineFlowBox.isHorizontal() ? rect.y() : rect.x(); |