Skip to content
  • shinyak@chromium.org's avatar
    [Refactoring] Node::shadowHost() and Node::setShadowHost() can be moved to ShadowRoot. · 22a3c20d
    shinyak@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=86585
    
    Reviewed by Hajime Morita.
    
    Since Node::shadowHost() and Node::setShadowHost() are valid only if Node is ShadowRoot,
    they should be moved to ShadowRoot.
    
    However, Node::setParent cannot be called from ShadowRoot, we add Node::setParentOrHostNode
    to call it as Node::parentOrHostNode() calls Node::parent(). Node::setParent() is now private.
    We also add SVGElementInstance::setParentOrHostNode() to share ContainerNodeAlgorithm.
    
    No new tests, no change in behavior.
    
    * dom/Attr.cpp:
    (WebCore::Attr::createTextChild):
    * dom/ContainerNode.cpp:
    (WebCore::ContainerNode::insertBeforeCommon):
    (WebCore::ContainerNode::removeBetween):
    (WebCore::ContainerNode::removeChildren):
    * dom/ContainerNodeAlgorithms.h:
    (WebCore::appendChildToContainer):
    (WebCore::Private::addChildNodesToDeletionQueue):
    * dom/ElementShadow.cpp:
    (WebCore::validateShadowRoot):
    (WebCore::ElementShadow::addShadowRoot):
    (WebCore::ElementShadow::removeAllShadowRoots):
    * dom/EventDispatcher.cpp:
    (WebCore::eventTargetRespectingSVGTargetRules):
    (WebCore::EventDispatcher::ensureEventAncestors):
    (WebCore::EventDispatcher::determineDispatchBehavior):
    * dom/EventDispatcher.h:
    (WebCore):
    (EventDispatcher):
    * dom/Node.cpp:
    (WebCore::Node::parentOrHostElement):
    * dom/Node.h:
    (Node):
    (WebCore::Node::setParentOrHostNode):
    (WebCore):
    * dom/NodeRenderingContext.cpp:
    (WebCore::NodeRenderingContext::NodeRenderingContext):
    * dom/ShadowRoot.h:
    (WebCore::ShadowRoot::host):
    (WebCore):
    (WebCore::ShadowRoot::setHost):
    * dom/TreeScope.cpp:
    (WebCore::TreeScope::focusedNode):
    * html/shadow/ContentSelectorQuery.cpp:
    (WebCore::ContentSelectorQuery::matches):
    * page/DragController.cpp:
    (WebCore::asFileInput):
    * page/EventHandler.cpp:
    (WebCore::EventHandler::handleMousePressEvent):
    (WebCore::instanceAssociatedWithShadowTreeElement):
    (WebCore::EventHandler::dispatchMouseEvent):
    * page/FocusController.cpp:
    (WebCore::FocusScope::owner):
    * rendering/RenderBlock.cpp:
    (WebCore::RenderBlock::hasLineIfEmpty):
    * svg/SVGElementInstance.h:
    (WebCore::SVGElementInstance::setParentOrHostNode):
    (SVGElementInstance):
    * svg/SVGStyledElement.cpp:
    (WebCore::SVGStyledElement::title):
    * svg/SVGTRefElement.cpp:
    (WebCore::SVGShadowText::willRecalcTextStyle):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117723 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    22a3c20d