| Index: Source/core/layout/LayoutBoxModelObject.cpp
|
| diff --git a/Source/core/rendering/RenderBoxModelObject.cpp b/Source/core/layout/LayoutBoxModelObject.cpp
|
| similarity index 91%
|
| rename from Source/core/rendering/RenderBoxModelObject.cpp
|
| rename to Source/core/layout/LayoutBoxModelObject.cpp
|
| index acb67b6029f4b2f671fa5e79990f7f2fca44e3fb..cadd46946bfa2b7d2cba8f771cac23b5cbbb07d7 100644
|
| --- a/Source/core/rendering/RenderBoxModelObject.cpp
|
| +++ b/Source/core/layout/LayoutBoxModelObject.cpp
|
| @@ -24,7 +24,7 @@
|
| */
|
|
|
| #include "config.h"
|
| -#include "core/rendering/RenderBoxModelObject.h"
|
| +#include "core/layout/LayoutBoxModelObject.h"
|
|
|
| #include "core/layout/ImageQualityController.h"
|
| #include "core/layout/Layer.h"
|
| @@ -57,10 +57,10 @@ namespace blink {
|
| // an anonymous block (that houses other blocks) or it will be an inline flow.
|
| // <b><i><p>Hello</p></i></b>. In this example the <i> will have a block as
|
| // its continuation but the <b> will just have an inline as its continuation.
|
| -typedef HashMap<const RenderBoxModelObject*, RenderBoxModelObject*> ContinuationMap;
|
| +typedef HashMap<const LayoutBoxModelObject*, LayoutBoxModelObject*> ContinuationMap;
|
| static ContinuationMap* continuationMap = nullptr;
|
|
|
| -void RenderBoxModelObject::setSelectionState(SelectionState state)
|
| +void LayoutBoxModelObject::setSelectionState(SelectionState state)
|
| {
|
| if (state == SelectionInside && selectionState() != SelectionNone)
|
| return;
|
| @@ -79,7 +79,7 @@ void RenderBoxModelObject::setSelectionState(SelectionState state)
|
| containingBlock->setSelectionState(state);
|
| }
|
|
|
| -void RenderBoxModelObject::contentChanged(ContentChangeType changeType)
|
| +void LayoutBoxModelObject::contentChanged(ContentChangeType changeType)
|
| {
|
| if (!hasLayer())
|
| return;
|
| @@ -87,21 +87,21 @@ void RenderBoxModelObject::contentChanged(ContentChangeType changeType)
|
| layer()->contentChanged(changeType);
|
| }
|
|
|
| -bool RenderBoxModelObject::hasAcceleratedCompositing() const
|
| +bool LayoutBoxModelObject::hasAcceleratedCompositing() const
|
| {
|
| return view()->compositor()->hasAcceleratedCompositing();
|
| }
|
|
|
| -RenderBoxModelObject::RenderBoxModelObject(ContainerNode* node)
|
| +LayoutBoxModelObject::LayoutBoxModelObject(ContainerNode* node)
|
| : LayoutLayerModelObject(node)
|
| {
|
| }
|
|
|
| -RenderBoxModelObject::~RenderBoxModelObject()
|
| +LayoutBoxModelObject::~LayoutBoxModelObject()
|
| {
|
| }
|
|
|
| -void RenderBoxModelObject::willBeDestroyed()
|
| +void LayoutBoxModelObject::willBeDestroyed()
|
| {
|
| ImageQualityController::remove(this);
|
|
|
| @@ -111,13 +111,13 @@ void RenderBoxModelObject::willBeDestroyed()
|
| LayoutLayerModelObject::willBeDestroyed();
|
| }
|
|
|
| -bool RenderBoxModelObject::calculateHasBoxDecorations() const
|
| +bool LayoutBoxModelObject::calculateHasBoxDecorations() const
|
| {
|
| const LayoutStyle& styleToUse = styleRef();
|
| return hasBackground() || styleToUse.hasBorder() || styleToUse.hasAppearance() || styleToUse.boxShadow();
|
| }
|
|
|
| -void RenderBoxModelObject::updateFromStyle()
|
| +void LayoutBoxModelObject::updateFromStyle()
|
| {
|
| LayoutLayerModelObject::updateFromStyle();
|
|
|
| @@ -144,7 +144,7 @@ static LayoutSize accumulateInFlowPositionOffsets(const LayoutObject* child)
|
| return offset;
|
| }
|
|
|
| -RenderBlock* RenderBoxModelObject::containingBlockForAutoHeightDetection(Length logicalHeight) const
|
| +RenderBlock* LayoutBoxModelObject::containingBlockForAutoHeightDetection(Length logicalHeight) const
|
| {
|
| // For percentage heights: The percentage is calculated with respect to the height of the generated box's
|
| // containing block. If the height of the containing block is not specified explicitly (i.e., it depends
|
| @@ -176,7 +176,7 @@ RenderBlock* RenderBoxModelObject::containingBlockForAutoHeightDetection(Length
|
| return cb;
|
| }
|
|
|
| -bool RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight() const
|
| +bool LayoutBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight() const
|
| {
|
| Length logicalHeightLength = style()->logicalHeight();
|
| if (logicalHeightLength.isAuto())
|
| @@ -191,7 +191,7 @@ bool RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight() const
|
| return false;
|
| }
|
|
|
| -LayoutSize RenderBoxModelObject::relativePositionOffset() const
|
| +LayoutSize LayoutBoxModelObject::relativePositionOffset() const
|
| {
|
| LayoutSize offset = accumulateInFlowPositionOffsets(this);
|
|
|
| @@ -231,7 +231,7 @@ LayoutSize RenderBoxModelObject::relativePositionOffset() const
|
| return offset;
|
| }
|
|
|
| -LayoutPoint RenderBoxModelObject::adjustedPositionRelativeToOffsetParent(const LayoutPoint& startPoint) const
|
| +LayoutPoint LayoutBoxModelObject::adjustedPositionRelativeToOffsetParent(const LayoutPoint& startPoint) const
|
| {
|
| // If the element is the HTML body element or doesn't have a parent
|
| // return 0 and stop this algorithm.
|
| @@ -248,7 +248,7 @@ LayoutPoint RenderBoxModelObject::adjustedPositionRelativeToOffsetParent(const L
|
| if (!element)
|
| return referencePoint;
|
|
|
| - if (const RenderBoxModelObject* offsetParent = element->renderBoxModelObject()) {
|
| + if (const LayoutBoxModelObject* offsetParent = element->layoutBoxModelObject()) {
|
| if (offsetParent->isBox() && !offsetParent->isBody())
|
| referencePoint.move(-toRenderBox(offsetParent)->borderLeft(), -toRenderBox(offsetParent)->borderTop());
|
| if (!isOutOfFlowPositioned() || flowThreadContainingBlock()) {
|
| @@ -273,36 +273,36 @@ LayoutPoint RenderBoxModelObject::adjustedPositionRelativeToOffsetParent(const L
|
| return referencePoint;
|
| }
|
|
|
| -LayoutSize RenderBoxModelObject::offsetForInFlowPosition() const
|
| +LayoutSize LayoutBoxModelObject::offsetForInFlowPosition() const
|
| {
|
| return isRelPositioned() ? relativePositionOffset() : LayoutSize();
|
| }
|
|
|
| -LayoutUnit RenderBoxModelObject::offsetLeft() const
|
| +LayoutUnit LayoutBoxModelObject::offsetLeft() const
|
| {
|
| // Note that RenderInline and RenderBox override this to pass a different
|
| // startPoint to adjustedPositionRelativeToOffsetParent.
|
| return adjustedPositionRelativeToOffsetParent(LayoutPoint()).x();
|
| }
|
|
|
| -LayoutUnit RenderBoxModelObject::offsetTop() const
|
| +LayoutUnit LayoutBoxModelObject::offsetTop() const
|
| {
|
| // Note that RenderInline and RenderBox override this to pass a different
|
| // startPoint to adjustedPositionRelativeToOffsetParent.
|
| return adjustedPositionRelativeToOffsetParent(LayoutPoint()).y();
|
| }
|
|
|
| -int RenderBoxModelObject::pixelSnappedOffsetWidth() const
|
| +int LayoutBoxModelObject::pixelSnappedOffsetWidth() const
|
| {
|
| return snapSizeToPixel(offsetWidth(), offsetLeft());
|
| }
|
|
|
| -int RenderBoxModelObject::pixelSnappedOffsetHeight() const
|
| +int LayoutBoxModelObject::pixelSnappedOffsetHeight() const
|
| {
|
| return snapSizeToPixel(offsetHeight(), offsetTop());
|
| }
|
|
|
| -LayoutUnit RenderBoxModelObject::computedCSSPadding(const Length& padding) const
|
| +LayoutUnit LayoutBoxModelObject::computedCSSPadding(const Length& padding) const
|
| {
|
| LayoutUnit w = 0;
|
| if (padding.isPercent())
|
| @@ -359,7 +359,7 @@ static inline IntSize resolveAgainstIntrinsicRatio(const IntSize& size, const Fl
|
| return IntSize(size.width(), solutionHeight);
|
| }
|
|
|
| -IntSize RenderBoxModelObject::calculateImageIntrinsicDimensions(StyleImage* image, const IntSize& positioningAreaSize, ScaleByEffectiveZoomOrNot shouldScaleOrNot) const
|
| +IntSize LayoutBoxModelObject::calculateImageIntrinsicDimensions(StyleImage* image, const IntSize& positioningAreaSize, ScaleByEffectiveZoomOrNot shouldScaleOrNot) const
|
| {
|
| // A generated image without a fixed size, will always return the container size as intrinsic size.
|
| if (image->isGeneratedImage() && image->usesImageContainerSize())
|
| @@ -400,7 +400,7 @@ IntSize RenderBoxModelObject::calculateImageIntrinsicDimensions(StyleImage* imag
|
| return positioningAreaSize;
|
| }
|
|
|
| -bool RenderBoxModelObject::boxShadowShouldBeAppliedToBackground(BackgroundBleedAvoidance bleedAvoidance, InlineFlowBox* inlineFlowBox) const
|
| +bool LayoutBoxModelObject::boxShadowShouldBeAppliedToBackground(BackgroundBleedAvoidance bleedAvoidance, InlineFlowBox* inlineFlowBox) const
|
| {
|
| if (bleedAvoidance != BackgroundBleedNone)
|
| return false;
|
| @@ -455,19 +455,19 @@ bool RenderBoxModelObject::boxShadowShouldBeAppliedToBackground(BackgroundBleedA
|
|
|
|
|
|
|
| -LayoutUnit RenderBoxModelObject::containingBlockLogicalWidthForContent() const
|
| +LayoutUnit LayoutBoxModelObject::containingBlockLogicalWidthForContent() const
|
| {
|
| return containingBlock()->availableLogicalWidth();
|
| }
|
|
|
| -RenderBoxModelObject* RenderBoxModelObject::continuation() const
|
| +LayoutBoxModelObject* LayoutBoxModelObject::continuation() const
|
| {
|
| if (!continuationMap)
|
| return 0;
|
| return continuationMap->get(this);
|
| }
|
|
|
| -void RenderBoxModelObject::setContinuation(RenderBoxModelObject* continuation)
|
| +void LayoutBoxModelObject::setContinuation(LayoutBoxModelObject* continuation)
|
| {
|
| if (continuation) {
|
| if (!continuationMap)
|
| @@ -479,7 +479,7 @@ void RenderBoxModelObject::setContinuation(RenderBoxModelObject* continuation)
|
| }
|
| }
|
|
|
| -void RenderBoxModelObject::computeLayerHitTestRects(LayerHitTestRects& rects) const
|
| +void LayoutBoxModelObject::computeLayerHitTestRects(LayerHitTestRects& rects) const
|
| {
|
| LayoutLayerModelObject::computeLayerHitTestRects(rects);
|
|
|
| @@ -491,7 +491,7 @@ void RenderBoxModelObject::computeLayerHitTestRects(LayerHitTestRects& rects) co
|
| continuation()->computeLayerHitTestRects(rects);
|
| }
|
|
|
| -LayoutRect RenderBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width, LayoutUnit textIndentOffset)
|
| +LayoutRect LayoutBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width, LayoutUnit textIndentOffset)
|
| {
|
| ASSERT(!slowFirstChild());
|
|
|
| @@ -501,9 +501,9 @@ LayoutRect RenderBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width,
|
| // of an empty :first-line'd block is wrong. I think we can live with that.
|
| const LayoutStyle& currentStyle = firstLineStyleRef();
|
|
|
| - enum CaretAlignment { alignLeft, alignRight, alignCenter };
|
| + enum CaretAlignment { AlignLeft, AlignRight, AlignCenter };
|
|
|
| - CaretAlignment alignment = alignLeft;
|
| + CaretAlignment alignment = AlignLeft;
|
|
|
| switch (currentStyle.textAlign()) {
|
| case LEFT:
|
| @@ -511,20 +511,20 @@ LayoutRect RenderBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width,
|
| break;
|
| case CENTER:
|
| case WEBKIT_CENTER:
|
| - alignment = alignCenter;
|
| + alignment = AlignCenter;
|
| break;
|
| case RIGHT:
|
| case WEBKIT_RIGHT:
|
| - alignment = alignRight;
|
| + alignment = AlignRight;
|
| break;
|
| case JUSTIFY:
|
| case TASTART:
|
| if (!currentStyle.isLeftToRightDirection())
|
| - alignment = alignRight;
|
| + alignment = AlignRight;
|
| break;
|
| case TAEND:
|
| if (currentStyle.isLeftToRightDirection())
|
| - alignment = alignRight;
|
| + alignment = AlignRight;
|
| break;
|
| }
|
|
|
| @@ -532,18 +532,18 @@ LayoutRect RenderBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width,
|
| LayoutUnit maxX = width - borderRight() - paddingRight();
|
|
|
| switch (alignment) {
|
| - case alignLeft:
|
| + case AlignLeft:
|
| if (currentStyle.isLeftToRightDirection())
|
| x += textIndentOffset;
|
| break;
|
| - case alignCenter:
|
| + case AlignCenter:
|
| x = (x + maxX) / 2;
|
| if (currentStyle.isLeftToRightDirection())
|
| x += textIndentOffset / 2;
|
| else
|
| x -= textIndentOffset / 2;
|
| break;
|
| - case alignRight:
|
| + case AlignRight:
|
| x = maxX - caretWidth;
|
| if (!currentStyle.isLeftToRightDirection())
|
| x -= textIndentOffset;
|
| @@ -557,7 +557,7 @@ LayoutRect RenderBoxModelObject::localCaretRectForEmptyElement(LayoutUnit width,
|
| return currentStyle.isHorizontalWritingMode() ? LayoutRect(x, y, caretWidth, height) : LayoutRect(y, x, height, caretWidth);
|
| }
|
|
|
| -void RenderBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, TransformState& transformState) const
|
| +void LayoutBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, TransformState& transformState) const
|
| {
|
| LayoutObject* o = container();
|
| if (!o)
|
| @@ -582,11 +582,12 @@ void RenderBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, Tra
|
| TransformationMatrix t;
|
| getTransformFromContainer(o, containerOffset, t);
|
| transformState.applyTransform(t, preserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTransform);
|
| - } else
|
| + } else {
|
| transformState.move(containerOffset.width(), containerOffset.height(), preserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTransform);
|
| + }
|
| }
|
|
|
| -const LayoutObject* RenderBoxModelObject::pushMappingToContainer(const LayoutLayerModelObject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const
|
| +const LayoutObject* LayoutBoxModelObject::pushMappingToContainer(const LayoutLayerModelObject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const
|
| {
|
| ASSERT(ancestorToStopAt != this);
|
|
|
| @@ -623,7 +624,7 @@ const LayoutObject* RenderBoxModelObject::pushMappingToContainer(const LayoutLay
|
| return ancestorSkipped ? ancestorToStopAt : container;
|
| }
|
|
|
| -void RenderBoxModelObject::moveChildTo(RenderBoxModelObject* toBoxModelObject, LayoutObject* child, LayoutObject* beforeChild, bool fullRemoveInsert)
|
| +void LayoutBoxModelObject::moveChildTo(LayoutBoxModelObject* toBoxModelObject, LayoutObject* child, LayoutObject* beforeChild, bool fullRemoveInsert)
|
| {
|
| // We assume that callers have cleared their positioned objects list for child moves (!fullRemoveInsert) so the
|
| // positioned renderer maps don't become stale. It would be too slow to do the map lookup on each call.
|
| @@ -635,11 +636,12 @@ void RenderBoxModelObject::moveChildTo(RenderBoxModelObject* toBoxModelObject, L
|
| // Takes care of adding the new child correctly if toBlock and fromBlock
|
| // have different kind of children (block vs inline).
|
| toBoxModelObject->addChild(virtualChildren()->removeChildNode(this, child), beforeChild);
|
| - } else
|
| + } else {
|
| toBoxModelObject->virtualChildren()->insertChildNode(toBoxModelObject, virtualChildren()->removeChildNode(this, child, fullRemoveInsert), beforeChild, fullRemoveInsert);
|
| + }
|
| }
|
|
|
| -void RenderBoxModelObject::moveChildrenTo(RenderBoxModelObject* toBoxModelObject, LayoutObject* startChild, LayoutObject* endChild, LayoutObject* beforeChild, bool fullRemoveInsert)
|
| +void LayoutBoxModelObject::moveChildrenTo(LayoutBoxModelObject* toBoxModelObject, LayoutObject* startChild, LayoutObject* endChild, LayoutObject* beforeChild, bool fullRemoveInsert)
|
| {
|
| // This condition is rarely hit since this function is usually called on
|
| // anonymous blocks which can no longer carry positioned objects (see r120761)
|
|
|