| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 1010 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1021 return selectorQuery->queryAll(*this); | 1021 return selectorQuery->queryAll(*this); |
| 1022 } | 1022 } |
| 1023 | 1023 |
| 1024 static void dispatchChildInsertionEvents(Node& child) | 1024 static void dispatchChildInsertionEvents(Node& child) |
| 1025 { | 1025 { |
| 1026 if (child.isInShadowTree()) | 1026 if (child.isInShadowTree()) |
| 1027 return; | 1027 return; |
| 1028 | 1028 |
| 1029 ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); | 1029 ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); |
| 1030 | 1030 |
| 1031 RefPtr<Node> c(child); | 1031 RefPtrWillBeRawPtr<Node> c(child); |
| 1032 RefPtr<Document> document(child.document()); | 1032 RefPtrWillBeRawPtr<Document> document(child.document()); |
| 1033 | 1033 |
| 1034 if (c->parentNode() && document->hasListenerType(Document::DOMNODEINSERTED_L
ISTENER)) | 1034 if (c->parentNode() && document->hasListenerType(Document::DOMNODEINSERTED_L
ISTENER)) |
| 1035 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNodeInse
rted, true, c->parentNode())); | 1035 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNodeInse
rted, true, c->parentNode())); |
| 1036 | 1036 |
| 1037 // dispatch the DOMNodeInsertedIntoDocument event to all descendants | 1037 // dispatch the DOMNodeInsertedIntoDocument event to all descendants |
| 1038 if (c->inDocument() && document->hasListenerType(Document::DOMNODEINSERTEDIN
TODOCUMENT_LISTENER)) { | 1038 if (c->inDocument() && document->hasListenerType(Document::DOMNODEINSERTEDIN
TODOCUMENT_LISTENER)) { |
| 1039 for (; c; c = NodeTraversal::next(*c, &child)) | 1039 for (; c; c = NodeTraversal::next(*c, &child)) |
| 1040 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNode
InsertedIntoDocument, false)); | 1040 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNode
InsertedIntoDocument, false)); |
| 1041 } | 1041 } |
| 1042 } | 1042 } |
| 1043 | 1043 |
| 1044 static void dispatchChildRemovalEvents(Node& child) | 1044 static void dispatchChildRemovalEvents(Node& child) |
| 1045 { | 1045 { |
| 1046 if (child.isInShadowTree()) { | 1046 if (child.isInShadowTree()) { |
| 1047 InspectorInstrumentation::willRemoveDOMNode(&child); | 1047 InspectorInstrumentation::willRemoveDOMNode(&child); |
| 1048 return; | 1048 return; |
| 1049 } | 1049 } |
| 1050 | 1050 |
| 1051 ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); | 1051 ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); |
| 1052 | 1052 |
| 1053 InspectorInstrumentation::willRemoveDOMNode(&child); | 1053 InspectorInstrumentation::willRemoveDOMNode(&child); |
| 1054 | 1054 |
| 1055 RefPtr<Node> c(child); | 1055 RefPtrWillBeRawPtr<Node> c(child); |
| 1056 RefPtr<Document> document(child.document()); | 1056 RefPtrWillBeRawPtr<Document> document(child.document()); |
| 1057 | 1057 |
| 1058 // dispatch pre-removal mutation events | 1058 // dispatch pre-removal mutation events |
| 1059 if (c->parentNode() && document->hasListenerType(Document::DOMNODEREMOVED_LI
STENER)) { | 1059 if (c->parentNode() && document->hasListenerType(Document::DOMNODEREMOVED_LI
STENER)) { |
| 1060 NodeChildRemovalTracker scope(child); | 1060 NodeChildRemovalTracker scope(child); |
| 1061 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNodeRemo
ved, true, c->parentNode())); | 1061 c->dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMNodeRemo
ved, true, c->parentNode())); |
| 1062 } | 1062 } |
| 1063 | 1063 |
| 1064 // dispatch the DOMNodeRemovedFromDocument event to all descendants | 1064 // dispatch the DOMNodeRemovedFromDocument event to all descendants |
| 1065 if (c->inDocument() && document->hasListenerType(Document::DOMNODEREMOVEDFRO
MDOCUMENT_LISTENER)) { | 1065 if (c->inDocument() && document->hasListenerType(Document::DOMNODEREMOVEDFRO
MDOCUMENT_LISTENER)) { |
| 1066 NodeChildRemovalTracker scope(child); | 1066 NodeChildRemovalTracker scope(child); |
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1275 return true; | 1275 return true; |
| 1276 | 1276 |
| 1277 if (node->isElementNode() && toElement(node)->shadow()) | 1277 if (node->isElementNode() && toElement(node)->shadow()) |
| 1278 return true; | 1278 return true; |
| 1279 | 1279 |
| 1280 return false; | 1280 return false; |
| 1281 } | 1281 } |
| 1282 #endif | 1282 #endif |
| 1283 | 1283 |
| 1284 } // namespace WebCore | 1284 } // namespace WebCore |
| OLD | NEW |