Ignore:
Timestamp:
Oct 2, 2013, 10:59:22 PM (12 years ago)
Author:
[email protected]
Message:

Unreviewed, rolling out r156816.
http://trac.webkit.org/changeset/156816
https://bugs.webkit.org/show_bug.cgi?id=122259

broke 8 tests (Requested by kling on #webkit).

  • html/HTMLFrameSetElement.cpp:

(WebCore::HTMLFrameSetElement::willRecalcStyle):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::listAttributeTargetChanged):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::RenderSliderContainer::layout):
(WebCore::SliderThumbElement::setPositionFromValue):
(WebCore::SliderThumbElement::setPositionFromPoint):
(WebCore::SliderThumbElement::stopDragging):

  • page/FrameView.cpp:

(WebCore::FrameView::setHeaderHeight):
(WebCore::FrameView::setFooterHeight):
(WebCore::FrameView::layout):
(WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
(WebCore::FrameView::scheduleRelayout):
(WebCore::FrameView::setNeedsLayout):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor):

  • rendering/FlowThreadController.h:

(WebCore::FlowThreadController::setIsRenderNamedFlowThreadOrderDirty):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::relayoutShapeDescendantIfMoved):
(WebCore::RenderBlock::markShapeInsideDescendantsForLayout):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout):
(WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
(WebCore::RenderBlock::simplifiedNormalFlowLayout):
(WebCore::RenderBlock::simplifiedLayout):
(WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::markPositionedObjectsForLayout):
(WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
(WebCore::RenderBlock::removePositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlock::getClearDelta):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::adjustPositionedBlock):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloats):
(WebCore::RenderBlockFlow::layoutInlineChildren):
(WebCore::RenderBlock::positionNewFloatOnLine):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::layout):
(WebCore::RenderBox::positionLineBox):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
(WebCore::gatherFlexChildrenInfo):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
(WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::insertChildInternal):

  • rendering/RenderElement.h:

(WebCore::RenderElement::setAncestorLineBoxDirty):
(WebCore::RenderObject::setNeedsLayout):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderFieldset.cpp:

(WebCore::RenderFieldset::layoutSpecialExcludedChild):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::styleDidChange):
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::invalidateRegions):
(WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):

  • rendering/RenderFrameBase.cpp:

(WebCore::RenderFrameBase::layoutWithFlattening):

  • rendering/RenderFrameSet.cpp:

(WebCore::RenderFrameSet::layout):
(WebCore::RenderFrameSet::positionFrames):
(WebCore::RenderFrameSet::positionFramesWithFlattening):
(WebCore::RenderFrameSet::continueResizing):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):
(WebCore::RenderGrid::logicalContentHeightForChild):
(WebCore::RenderGrid::layoutGridItems):

  • rendering/RenderHTMLCanvas.cpp:

(WebCore::RenderHTMLCanvas::canvasSizeChanged):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::layout):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageDimensionsChanged):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateScrollbarsAfterLayout):

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::styleDidChange):

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::layout):

  • rendering/RenderMarquee.cpp:

(WebCore::RenderMarquee::updateMarqueeStyle):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::layout):

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::relayoutForPagination):
(WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::markContainingBlocksForLayout):
(WebCore::RenderObject::layout):

  • rendering/RenderObject.h:

(WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
(WebCore::RenderObject::setNeedsPositionedMovementLayout):
(WebCore::RenderObject::setNormalChildNeedsLayout):
(WebCore::RenderObject::setPosChildNeedsLayout):
(WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
(WebCore::RenderObject::setChildNeedsLayout):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::layout):

  • rendering/RenderReplica.cpp:

(WebCore::RenderReplica::layout):

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layoutSpecialExcludedChild):

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::updateScrollbarParts):

  • rendering/RenderScrollbarPart.cpp:

(WebCore::RenderScrollbarPart::layout):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::layout):

  • rendering/RenderTable.h:

(WebCore::RenderTable::setNeedsSectionRecalc):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::computeIntrinsicPadding):
(WebCore::RenderTableCell::setCellLogicalWidth):
(WebCore::RenderTableCell::layout):

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::styleDidChange):
(WebCore::RenderTableRow::layout):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layout):
(WebCore::RenderTableSection::layoutRows):
(WebCore::RenderTableSection::recalcCells):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::layoutSpecialExcludedChild):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::setNeedsLayoutOnAncestors):
(WebCore::RenderTextControlSingleLine::layout):
(WebCore::RenderTextControlSingleLine::styleDidChange):

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::updateIntrinsicSize):

  • rendering/RenderView.cpp:

(WebCore::RenderView::layout):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::layout):

  • rendering/mathml/RenderMathMLBlock.cpp:

(WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):

  • rendering/mathml/RenderMathMLScripts.cpp:

(WebCore::RenderMathMLScripts::layout):

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::layout):

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::layout):

  • rendering/svg/RenderSVGHiddenContainer.cpp:

(WebCore::RenderSVGHiddenContainer::layout):

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::layout):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::layout):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::layoutChildren):

  • svg/SVGClipPathElement.cpp:

(WebCore::SVGClipPathElement::svgAttributeChanged):
(WebCore::SVGClipPathElement::childrenChanged):

  • svg/SVGFilterElement.cpp:

(WebCore::SVGFilterElement::setFilterRes):
(WebCore::SVGFilterElement::svgAttributeChanged):
(WebCore::SVGFilterElement::childrenChanged):

  • svg/SVGGradientElement.cpp:

(WebCore::SVGGradientElement::svgAttributeChanged):
(WebCore::SVGGradientElement::childrenChanged):

  • svg/SVGLinearGradientElement.cpp:

(WebCore::SVGLinearGradientElement::svgAttributeChanged):

  • svg/SVGMarkerElement.cpp:

(WebCore::SVGMarkerElement::svgAttributeChanged):
(WebCore::SVGMarkerElement::childrenChanged):

  • svg/SVGMaskElement.cpp:

(WebCore::SVGMaskElement::svgAttributeChanged):
(WebCore::SVGMaskElement::childrenChanged):

  • svg/SVGPatternElement.cpp:

(WebCore::SVGPatternElement::svgAttributeChanged):
(WebCore::SVGPatternElement::childrenChanged):

  • svg/SVGRadialGradientElement.cpp:

(WebCore::SVGRadialGradientElement::svgAttributeChanged):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::updateCurrentTranslate):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/rendering/RenderObject.h

    r156816 r156822  
    618618
    619619    void markContainingBlocksForLayout(bool scheduleRelayout = true, RenderObject* newRoot = 0);
    620     void setNeedsLayout(MarkingBehavior = MarkContainingBlockChain);
    621     void clearNeedsLayout();
     620    void setNeedsLayout(bool needsLayout, MarkingBehavior = MarkContainingBlockChain);
     621    void setChildNeedsLayout(bool childNeedsLayout, MarkingBehavior = MarkContainingBlockChain);
     622    void setNeedsPositionedMovementLayout(const RenderStyle* oldStyle);
     623    void setNeedsSimplifiedNormalFlowLayout();
    622624    void setPreferredLogicalWidthsDirty(bool, MarkingBehavior = MarkContainingBlockChain);
    623625    void invalidateContainerPreferredLogicalWidths();
     
    625627    void setNeedsLayoutAndPrefWidthsRecalc()
    626628    {
    627         setNeedsLayout();
     629        setNeedsLayout(true);
    628630        setPreferredLogicalWidthsDirty(true);
    629631    }
     
    939941
    940942    void setDocumentForAnonymous(Document& document) { ASSERT(isAnonymous()); m_node = &document; }
    941 
    942     void setNeedsPositionedMovementLayoutBit(bool b) { m_bitfields.setNeedsPositionedMovementLayout(b); }
    943     void setNormalChildNeedsLayoutBit(bool b) { m_bitfields.setNormalChildNeedsLayout(b); }
    944     void setPosChildNeedsLayoutBit(bool b) { m_bitfields.setPosChildNeedsLayout(b); }
    945     void setNeedsSimplifiedNormalFlowLayoutBit(bool b) { m_bitfields.setNeedsSimplifiedNormalFlowLayout(b); }
    946943
    947944private:
     
    10811078    RenderObjectBitfields m_bitfields;
    10821079
     1080    void setNeedsPositionedMovementLayout(bool b) { m_bitfields.setNeedsPositionedMovementLayout(b); }
     1081    void setNormalChildNeedsLayout(bool b) { m_bitfields.setNormalChildNeedsLayout(b); }
     1082    void setPosChildNeedsLayout(bool b) { m_bitfields.setPosChildNeedsLayout(b); }
     1083    void setNeedsSimplifiedNormalFlowLayout(bool b) { m_bitfields.setNeedsSimplifiedNormalFlowLayout(b); }
    10831084    void setIsDragging(bool b) { m_bitfields.setIsDragging(b); }
    10841085    void setEverHadLayout(bool b) { m_bitfields.setEverHadLayout(b); }
     
    11151116}
    11161117
    1117 inline void RenderObject::setNeedsLayout(MarkingBehavior markParents)
    1118 {
     1118inline void RenderObject::setChildNeedsLayout(bool childNeedsLayout, MarkingBehavior markParents)
     1119{
     1120    bool alreadyNeededLayout = normalChildNeedsLayout();
     1121    setNormalChildNeedsLayout(childNeedsLayout);
     1122    if (childNeedsLayout) {
     1123        ASSERT(!isSetNeedsLayoutForbidden());
     1124        if (!alreadyNeededLayout && markParents == MarkContainingBlockChain)
     1125            markContainingBlocksForLayout();
     1126    } else {
     1127        setPosChildNeedsLayout(false);
     1128        setNeedsSimplifiedNormalFlowLayout(false);
     1129        setNormalChildNeedsLayout(false);
     1130        setNeedsPositionedMovementLayout(false);
     1131    }
     1132}
     1133
     1134inline void RenderObject::setNeedsPositionedMovementLayout(const RenderStyle* oldStyle)
     1135{
     1136    bool alreadyNeededLayout = needsPositionedMovementLayout();
     1137    setNeedsPositionedMovementLayout(true);
    11191138    ASSERT(!isSetNeedsLayoutForbidden());
    1120     if (m_bitfields.needsLayout())
    1121         return;
    1122     m_bitfields.setNeedsLayout(true);
    1123     if (markParents == MarkContainingBlockChain)
     1139    if (!alreadyNeededLayout) {
    11241140        markContainingBlocksForLayout();
    1125     if (hasLayer())
    1126         setLayerNeedsFullRepaint();
     1141        if (hasLayer()) {
     1142            if (oldStyle && style()->diffRequiresRepaint(oldStyle))
     1143                setLayerNeedsFullRepaint();
     1144            else
     1145                setLayerNeedsFullRepaintForPositionedMovementLayout();
     1146        }
     1147    }
     1148}
     1149
     1150inline void RenderObject::setNeedsSimplifiedNormalFlowLayout()
     1151{
     1152    bool alreadyNeededLayout = needsSimplifiedNormalFlowLayout();
     1153    setNeedsSimplifiedNormalFlowLayout(true);
     1154    ASSERT(!isSetNeedsLayoutForbidden());
     1155    if (!alreadyNeededLayout) {
     1156        markContainingBlocksForLayout();
     1157        if (hasLayer())
     1158            setLayerNeedsFullRepaint();
     1159    }
    11271160}
    11281161
Note: See TracChangeset for help on using the changeset viewer.