Skip to content
  • hyatt@apple.com's avatar
    https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock. · f5e875db
    hyatt@apple.com authored
            
    Reviewed by Sam Weinig.
    
    Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the
    |to| argument to be a RenderBlock.
            
    Add a moveChildrenTo function that can move a range of children, and patch places that were doing this
    by hand.
    
    Make the append forms of the functions just use the insert forms with a beforeChild of 0.
            
    Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the
    case where it does an append.
            
    Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are
    messed up when using append/insertChildNode.
    
    * rendering/RenderBlock.cpp:
    (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
    (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
    (WebCore::RenderBlock::createAndAppendRootInlineBox):
    (WebCore::RenderBlock::moveChildTo):
    (WebCore::RenderBlock::moveChildrenTo):
    (WebCore::RenderBlock::makeChildrenNonInline):
    (WebCore::RenderBlock::removeChild):
    * rendering/RenderBlock.h:
    (WebCore::RenderBlock::moveChildTo):
    (WebCore::RenderBlock::moveAllChildrenTo):
    (WebCore::RenderBlock::moveChildrenTo):
    * rendering/RenderLayer.cpp:
    (WebCore::RenderLayer::addChild):
    * rendering/RenderObjectChildList.cpp:
    (WebCore::RenderObjectChildList::insertChildNode):
    * rendering/RenderRubyBase.cpp:
    (WebCore::RenderRubyBase::moveInlineChildren):
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@60282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    f5e875db