Index: Source/core/dom/ContainerNode.cpp |
diff --git a/Source/core/dom/ContainerNode.cpp b/Source/core/dom/ContainerNode.cpp |
index 70fccff6a612a0f4985328034de6a6720bc4fae8..1d4eb493f8f8c50da0da941f1f2eef3a24013ddd 100644 |
--- a/Source/core/dom/ContainerNode.cpp |
+++ b/Source/core/dom/ContainerNode.cpp |
@@ -101,7 +101,7 @@ void ContainerNode::takeAllChildrenFrom(ContainerNode* oldParent) |
NodeVector children; |
getChildNodes(oldParent, children); |
- if (oldParent->document()->hasMutationObserversOfType(MutationObserver::ChildList)) { |
+ if (oldParent->document().hasMutationObserversOfType(MutationObserver::ChildList)) { |
ChildListMutationScope mutation(oldParent); |
for (unsigned i = 0; i < children.size(); ++i) |
mutation.willRemoveChild(children[i].get()); |
@@ -116,7 +116,7 @@ void ContainerNode::takeAllChildrenFrom(ContainerNode* oldParent) |
if (children[i]->attached()) |
children[i]->detach(); |
// FIXME: We need a no mutation event version of adoptNode. |
- RefPtr<Node> child = document()->adoptNode(children[i].release(), ASSERT_NO_EXCEPTION); |
+ RefPtr<Node> child = document().adoptNode(children[i].release(), ASSERT_NO_EXCEPTION); |
// FIXME: Together with adoptNode above, the tree scope might get updated recursively twice |
// (if the document changed or oldParent was in a shadow tree, AND *this is in a shadow tree). |
// Can we do better? |
@@ -146,8 +146,8 @@ static inline bool isChildTypeAllowed(ContainerNode* newParent, Node* child) |
static inline bool isInTemplateContent(const Node* node) |
{ |
- Document* document = node->document(); |
- return document == document->templateDocument(); |
+ Document& document = node->document(); |
+ return &document == document.templateDocument(); |
} |
static inline bool containsConsideringHostElements(const Node* newChild, const Node* newParent) |
@@ -263,7 +263,7 @@ void ContainerNode::insertBefore(PassRefPtr<Node> newChild, Node* refChild, Exce |
if (!checkAcceptChildGuaranteedNodeTypes(this, newChild.get(), es)) |
return; |
- InspectorInstrumentation::willInsertDOMNode(document(), this); |
+ InspectorInstrumentation::willInsertDOMNode(&document(), this); |
ChildListMutationScope mutation(this); |
for (NodeVector::const_iterator it = targets.begin(); it != targets.end(); ++it) { |
@@ -325,8 +325,8 @@ void ContainerNode::parserInsertBefore(PassRefPtr<Node> newChild, Node* nextChil |
if (nextChild->previousSibling() == newChild || nextChild == newChild) // nothing to do |
return; |
- if (document() != newChild->document()) |
- document()->adoptNode(newChild.get(), ASSERT_NO_EXCEPTION); |
+ if (&document() != &newChild->document()) |
+ document().adoptNode(newChild.get(), ASSERT_NO_EXCEPTION); |
insertBeforeCommon(nextChild, newChild.get()); |
@@ -393,7 +393,7 @@ void ContainerNode::replaceChild(PassRefPtr<Node> newChild, Node* oldChild, Exce |
if (!checkReplaceChild(this, newChild.get(), oldChild, es)) |
return; |
- InspectorInstrumentation::willInsertDOMNode(document(), this); |
+ InspectorInstrumentation::willInsertDOMNode(&document(), this); |
// Add the new child(ren) |
for (NodeVector::const_iterator it = targets.begin(); it != targets.end(); ++it) { |
@@ -431,7 +431,7 @@ static void willRemoveChild(Node* child) |
ChildListMutationScope(child->parentNode()).willRemoveChild(child); |
child->notifyMutationObserversNodeWillDetach(); |
dispatchChildRemovalEvents(child); |
- child->document()->nodeWillBeRemoved(child); // e.g. mutation event listener can create a new range. |
+ child->document().nodeWillBeRemoved(child); // e.g. mutation event listener can create a new range. |
ChildFrameDisconnector(child).disconnect(); |
} |
@@ -440,7 +440,7 @@ static void willRemoveChildren(ContainerNode* container) |
NodeVector children; |
getChildNodes(container, children); |
- container->document()->nodeChildrenWillBeRemoved(container); |
+ container->document().nodeChildrenWillBeRemoved(container); |
ChildListMutationScope mutation(container); |
for (NodeVector::const_iterator it = children.begin(); it != children.end(); it++) { |
@@ -476,9 +476,9 @@ void ContainerNode::removeChild(Node* oldChild, ExceptionState& es) |
RefPtr<Node> child = oldChild; |
- document()->removeFocusedElementOfSubtree(child.get()); |
+ document().removeFocusedElementOfSubtree(child.get()); |
- if (FullscreenElementStack* fullscreen = FullscreenElementStack::fromIfExists(document())) |
+ if (FullscreenElementStack* fullscreen = FullscreenElementStack::fromIfExists(&document())) |
fullscreen->removeFullScreenElementOfSubtree(child.get()); |
// Events fired when blurring currently focused node might have moved this |
@@ -532,7 +532,7 @@ void ContainerNode::removeBetween(Node* previousChild, Node* nextChild, Node* ol |
oldChild->setNextSibling(0); |
oldChild->setParentOrShadowHostNode(0); |
- document()->adoptIfNeeded(oldChild); |
+ document().adoptIfNeeded(oldChild); |
} |
void ContainerNode::parserRemoveChild(Node* oldChild) |
@@ -565,7 +565,7 @@ void ContainerNode::removeChildren() |
// The container node can be removed from event handlers. |
RefPtr<ContainerNode> protect(this); |
- if (FullscreenElementStack* fullscreen = FullscreenElementStack::fromIfExists(document())) |
+ if (FullscreenElementStack* fullscreen = FullscreenElementStack::fromIfExists(&document())) |
fullscreen->removeFullScreenElementOfSubtree(this, true); |
// Do any prep work needed before actually starting to detach |
@@ -576,7 +576,7 @@ void ContainerNode::removeChildren() |
// children will be removed. |
// This must be later than willRemvoeChildren, which might change focus |
// state of a child. |
- document()->removeFocusedElementOfSubtree(this, true); |
+ document().removeFocusedElementOfSubtree(this, true); |
NodeVector removedChildren; |
{ |
@@ -626,7 +626,7 @@ void ContainerNode::appendChild(PassRefPtr<Node> newChild, ExceptionState& es) |
if (!checkAcceptChildGuaranteedNodeTypes(this, newChild.get(), es)) |
return; |
- InspectorInstrumentation::willInsertDOMNode(document(), this); |
+ InspectorInstrumentation::willInsertDOMNode(&document(), this); |
// Now actually add the child(ren) |
ChildListMutationScope mutation(this); |
@@ -660,8 +660,8 @@ void ContainerNode::parserAppendChild(PassRefPtr<Node> newChild, AttachBehavior |
ASSERT(!newChild->isDocumentFragment()); |
ASSERT(!hasTagName(HTMLNames::templateTag)); |
- if (document() != newChild->document()) |
- document()->adoptNode(newChild.get(), ASSERT_NO_EXCEPTION); |
+ if (&document() != &newChild->document()) |
+ document().adoptNode(newChild.get(), ASSERT_NO_EXCEPTION); |
Node* last = m_lastChild; |
{ |
@@ -736,9 +736,9 @@ void ContainerNode::detach(const AttachContext& context) |
void ContainerNode::childrenChanged(bool changedByParser, Node*, Node*, int childCountDelta) |
{ |
- document()->incDOMTreeVersion(); |
+ document().incDOMTreeVersion(); |
if (!changedByParser && childCountDelta) |
- document()->updateRangesAfterChildrenChanged(this); |
+ document().updateRangesAfterChildrenChanged(this); |
invalidateNodeListCachesInAncestors(); |
} |
@@ -805,8 +805,8 @@ bool ContainerNode::getUpperLeftCorner(FloatPoint& point) const |
// If the target doesn't have any children or siblings that could be used to calculate the scroll position, we must be |
// at the end of the document. Scroll to the bottom. FIXME: who said anything about scrolling? |
- if (!o && document()->view()) { |
- point = FloatPoint(0, document()->view()->contentsHeight()); |
+ if (!o && document().view()) { |
+ point = FloatPoint(0, document().view()->contentsHeight()); |
return true; |
} |
return false; |
@@ -992,7 +992,7 @@ static void dispatchChildInsertionEvents(Node* child) |
ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); |
RefPtr<Node> c = child; |
- RefPtr<Document> document = child->document(); |
+ RefPtr<Document> document = &child->document(); |
if (c->parentNode() && document->hasListenerType(Document::DOMNODEINSERTED_LISTENER)) |
c->dispatchScopedEvent(MutationEvent::create(eventNames().DOMNodeInsertedEvent, true, c->parentNode())); |
@@ -1007,16 +1007,16 @@ static void dispatchChildInsertionEvents(Node* child) |
static void dispatchChildRemovalEvents(Node* child) |
{ |
if (child->isInShadowTree()) { |
- InspectorInstrumentation::willRemoveDOMNode(child->document(), child); |
+ InspectorInstrumentation::willRemoveDOMNode(&child->document(), child); |
return; |
} |
ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); |
- InspectorInstrumentation::willRemoveDOMNode(child->document(), child); |
+ InspectorInstrumentation::willRemoveDOMNode(&child->document(), child); |
RefPtr<Node> c = child; |
- RefPtr<Document> document = child->document(); |
+ RefPtr<Document> document = &child->document(); |
// dispatch pre-removal mutation events |
if (c->parentNode() && document->hasListenerType(Document::DOMNODEREMOVED_LISTENER)) |