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 835 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 if (children[i]->parentNode() != this) | 846 if (children[i]->parentNode() != this) |
847 continue; | 847 continue; |
848 children[i]->removedFromDocument(); | 848 children[i]->removedFromDocument(); |
849 } | 849 } |
850 } | 850 } |
851 | 851 |
852 void ContainerNode::insertedIntoTree(bool deep) | 852 void ContainerNode::insertedIntoTree(bool deep) |
853 { | 853 { |
854 if (!deep) | 854 if (!deep) |
855 return; | 855 return; |
| 856 forbidEventDispatch(); |
856 for (Node* child = m_firstChild; child; child = child->nextSibling()) | 857 for (Node* child = m_firstChild; child; child = child->nextSibling()) |
857 child->insertedIntoTree(true); | 858 child->insertedIntoTree(true); |
| 859 allowEventDispatch(); |
858 } | 860 } |
859 | 861 |
860 void ContainerNode::removedFromTree(bool deep) | 862 void ContainerNode::removedFromTree(bool deep) |
861 { | 863 { |
862 if (!deep) | 864 if (!deep) |
863 return; | 865 return; |
| 866 forbidEventDispatch(); |
864 for (Node* child = m_firstChild; child; child = child->nextSibling()) | 867 for (Node* child = m_firstChild; child; child = child->nextSibling()) |
865 child->removedFromTree(true); | 868 child->removedFromTree(true); |
| 869 allowEventDispatch(); |
866 } | 870 } |
867 | 871 |
868 void ContainerNode::childrenChanged(bool changedByParser, Node* beforeChange, No
de* afterChange, int childCountDelta) | 872 void ContainerNode::childrenChanged(bool changedByParser, Node* beforeChange, No
de* afterChange, int childCountDelta) |
869 { | 873 { |
870 Node::childrenChanged(changedByParser, beforeChange, afterChange, childCount
Delta); | 874 Node::childrenChanged(changedByParser, beforeChange, afterChange, childCount
Delta); |
871 if (!changedByParser && childCountDelta) | 875 if (!changedByParser && childCountDelta) |
872 document()->updateRangesAfterChildrenChanged(this); | 876 document()->updateRangesAfterChildrenChanged(this); |
873 invalidateNodeListsCacheAfterChildrenChanged(); | 877 invalidateNodeListsCacheAfterChildrenChanged(); |
874 } | 878 } |
875 | 879 |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1191 if (!document()->hasListenerType(Document::BEFORELOAD_LISTENER)) | 1195 if (!document()->hasListenerType(Document::BEFORELOAD_LISTENER)) |
1192 return true; | 1196 return true; |
1193 | 1197 |
1194 RefPtr<ContainerNode> protector(this); | 1198 RefPtr<ContainerNode> protector(this); |
1195 RefPtr<BeforeLoadEvent> beforeLoadEvent = BeforeLoadEvent::create(sourceURL)
; | 1199 RefPtr<BeforeLoadEvent> beforeLoadEvent = BeforeLoadEvent::create(sourceURL)
; |
1196 dispatchEvent(beforeLoadEvent.get()); | 1200 dispatchEvent(beforeLoadEvent.get()); |
1197 return !beforeLoadEvent->defaultPrevented(); | 1201 return !beforeLoadEvent->defaultPrevented(); |
1198 } | 1202 } |
1199 | 1203 |
1200 } // namespace WebCore | 1204 } // namespace WebCore |
OLD | NEW |