-
https://bugs.webkit.org/show_bug.cgi?id=81685hyatt@apple.com authored
[New Multicolumn] Add RenderMultiColumnFlowThread to hold the flow thread contents of a multi-column block. It derives from RenderFlowThread. Refactor RenderFlowThread to split out the stuff related to explicit naming into a subclass, RenderNamedFlowThread. This allows RenderFlowThread to be a simple base class that involves maintaining the regions themselves. Reviewed by Julien Chaffraix. * CMakeLists.txt: * GNUmakefile.list.am: * Target.pri: * WebCore.gypi: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * dom/Document.cpp: * dom/NodeRenderingContext.cpp: * dom/NodeRenderingContext.h: (WebCore): (WebCore::NodeRenderingContext::parentFlowRenderer): * dom/WebKitNamedFlow.cpp: (WebCore::WebKitNamedFlow::WebKitNamedFlow): * dom/WebKitNamedFlow.h: (WebCore): (WebCore::WebKitNamedFlow::create): (WebKitNamedFlow): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::collapseAnonymousBoxChild): * rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::RenderFlowThread): (WebCore): (WebCore::RenderFlowThread::addRegionToThread): (WebCore::RenderFlowThread::removeRegionFromThread): (WebCore::RenderFlowThread::removeRenderBoxRegionInfo): * rendering/RenderFlowThread.h: (WebCore): * rendering/RenderMultiColumnFlowThread.cpp: Added. (WebCore): (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread): (WebCore::RenderMultiColumnFlowThread::renderName): * rendering/RenderMultiColumnFlowThread.h: Added. (WebCore): (RenderMultiColumnFlowThread): * rendering/RenderNamedFlowThread.cpp: Added. (WebCore): (WebCore::RenderNamedFlowThread::RenderNamedFlowThread): (WebCore::RenderNamedFlowThread::renderName): (WebCore::RenderNamedFlowThread::nextRendererForNode): (WebCore::RenderNamedFlowThread::previousRendererForNode): (WebCore::RenderNamedFlowThread::addFlowChild): (WebCore::RenderNamedFlowThread::removeFlowChild): (WebCore::RenderNamedFlowThread::dependsOn): (WebCore::compareRenderRegions): (WebCore::RenderNamedFlowThread::addRegionToThread): (WebCore::RenderNamedFlowThread::removeRegionFromThread): (WebCore::RenderNamedFlowThread::checkInvalidRegions): (WebCore::RenderNamedFlowThread::addDependencyOnFlowThread): (WebCore::RenderNamedFlowThread::removeDependencyOnFlowThread): (WebCore::RenderNamedFlowThread::pushDependencies): (WebCore::RenderNamedFlowThread::ensureNamedFlow): * rendering/RenderNamedFlowThread.h: Added. (WebCore): (RenderNamedFlowThread): (WebCore::RenderNamedFlowThread::name): (WebCore::RenderNamedFlowThread::hasChildren): (WebCore::RenderNamedFlowThread::hasChild): (WebCore::RenderNamedFlowThread::isRenderNamedFlowThread): (WebCore::toRenderNamedFlowThread): * rendering/RenderObject.cpp: (WebCore::RenderObject::willBeDestroyed): * rendering/RenderObject.h: (WebCore::RenderObject::isRenderNamedFlowThread): * rendering/RenderObjectChildList.cpp: (WebCore::renderNamedFlowThreadContainer): (WebCore::RenderObjectChildList::removeChildNode): (WebCore::RenderObjectChildList::appendChildNode): (WebCore::RenderObjectChildList::insertChildNode): * rendering/RenderRegion.cpp: (WebCore::RenderRegion::RenderRegion): (WebCore::RenderRegion::attachRegion): * rendering/RenderRegion.h: (WebCore): (WebCore::RenderRegion::parentNamedFlowThread): (RenderRegion): * rendering/RenderTreeAsText.cpp: (WebCore::writeRenderNamedFlowThreads): (WebCore::writeLayers): * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::RenderView::layout): (WebCore::RenderView::styleDidChange): (WebCore::RenderView::ensureRenderFlowThreadWithName): (WebCore::RenderView::layoutRenderNamedFlowThreads): * rendering/RenderView.h: (WebCore): (RenderView): (WebCore::RenderView::hasRenderNamedFlowThreads): (WebCore::RenderView::isRenderNamedFlowThreadOrderDirty): (WebCore::RenderView::setIsRenderNamedFlowThreadOrderDirty): (WebCore::RenderView::renderNamedFlowThreadList): LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=81685 [New Multicolumn] Add RenderMultiColumnFlowThread to hold the flow thread contents of a multi-column block. It derives from RenderFlowThread. Change layout test results to reflect the name change from RenderFlowThread to RenderNamedFlowThread. Other platforms should update results accordingly. Reviewed by Julien Chaffraix. * fast/repaint/inline-relative-positioned-expected.txt: * fast/repaint/overflow-clip-subtree-layout-expected.txt: * fast/repaint/subtree-root-clip-2-expected.txt: * fast/repaint/subtree-root-clip-3-expected.txt: * fast/repaint/subtree-root-clip-expected.txt: * platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: * platform/mac/fast/regions/flow-content-basic-expected.txt: * platform/mac/fast/regions/flow-content-basic-vertical-expected.txt: * platform/mac/fast/regions/flow-content-basic-vertical-rl-expected.txt: * platform/mac/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: * platform/mac/fast/regions/overflow-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-size-change-with-stacking-context-expected.txt: * platform/mac/fast/regions/overflow-size-change-with-stacking-context-rtl-expected.txt: * platform/mac/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: * platform/mac/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: * platform/mac/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: * platform/mac/fast/regions/percentage-margins-variable-width-regions-expected.txt: * platform/mac/fast/regions/region-overflow-auto-overflow-hidden-expected.txt: * platform/mac/fast/regions/region-overflow-auto-overflow-visible-expected.txt: * platform/mac/fast/regions/region-overflow-break-expected.txt: * platform/mac/fast/regions/region-style-block-background-color-expected.txt: * platform/mac/fast/regions/region-style-block-background-color2-expected.txt: * platform/mac/fast/regions/region-style-image-background-color-expected.txt: * platform/mac/fast/regions/region-style-inline-background-color-expected.txt: * platform/mac/fast/regions/render-region-custom-style-mark-expected.txt: * platform/mac/fast/regions/text-region-split-small-pagination-expected.txt: * platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt: * platform/mac/fast/regions/webkit-flow-double-pagination-float-push-expected.txt: * platform/mac/fast/regions/webkit-flow-float-pushed-to-last-region-expected.txt: * platform/mac/fast/regions/webkit-flow-float-unable-to-push-expected.txt: * platform/mac/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt: * platform/mac/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt: * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: * platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt: * platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: * platform/mac/fast/repaint/region-painting-invalidation-expected.txt: * platform/mac/fast/repaint/region-painting-via-layout-expected.txt: * platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.txt: * platform/qt/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: * platform/qt/fast/repaint/region-painting-invalidation-expected.txt: * platform/qt/fast/repaint/region-painting-via-layout-expected.txt: * platform/win/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112453 268f45cc-cd09-0410-ab3c-d52691b4dbfc
04cdbe4f