| 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, 2010, 2011 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r
ights reserved. |
| 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 8 * | 8 * |
| 9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
| 10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 #include "wtf/RefCountedLeakCounter.h" | 92 #include "wtf/RefCountedLeakCounter.h" |
| 93 #include "wtf/Vector.h" | 93 #include "wtf/Vector.h" |
| 94 #include "wtf/text/CString.h" | 94 #include "wtf/text/CString.h" |
| 95 #include "wtf/text/StringBuilder.h" | 95 #include "wtf/text/StringBuilder.h" |
| 96 | 96 |
| 97 namespace blink { | 97 namespace blink { |
| 98 | 98 |
| 99 using namespace HTMLNames; | 99 using namespace HTMLNames; |
| 100 | 100 |
| 101 struct SameSizeAsNode : NODE_BASE_CLASSES { | 101 struct SameSizeAsNode : NODE_BASE_CLASSES { |
| 102 #if !(ENABLE(OILPAN) && USE_4BYTE_HEADER_PADDING) |
| 102 uint32_t m_nodeFlags; | 103 uint32_t m_nodeFlags; |
| 104 #endif |
| 103 void* m_pointer[5]; | 105 void* m_pointer[5]; |
| 104 }; | 106 }; |
| 105 | 107 |
| 106 static_assert(sizeof(Node) <= sizeof(SameSizeAsNode), "Node should stay small"); | 108 static_assert(sizeof(Node) <= sizeof(SameSizeAsNode), "Node should stay small"); |
| 107 | 109 |
| 108 #if !ENABLE(OILPAN) | 110 #if !ENABLE(OILPAN) |
| 109 void* Node::operator new(size_t size) | 111 void* Node::operator new(size_t size) |
| 110 { | 112 { |
| 111 ASSERT(isMainThread()); | 113 ASSERT(isMainThread()); |
| 112 return partitionAlloc(WTF::Partitions::nodePartition(), size); | 114 return partitionAlloc(WTF::Partitions::nodePartition(), size); |
| (...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 #ifndef NDEBUG | 251 #ifndef NDEBUG |
| 250 nodeCounter.increment(); | 252 nodeCounter.increment(); |
| 251 #endif | 253 #endif |
| 252 | 254 |
| 253 #if DUMP_NODE_STATISTICS | 255 #if DUMP_NODE_STATISTICS |
| 254 liveNodeSet().add(this); | 256 liveNodeSet().add(this); |
| 255 #endif | 257 #endif |
| 256 } | 258 } |
| 257 | 259 |
| 258 Node::Node(TreeScope* treeScope, ConstructionType type) | 260 Node::Node(TreeScope* treeScope, ConstructionType type) |
| 259 : m_nodeFlags(type) | 261 : m_parentOrShadowHostNode(nullptr) |
| 260 , m_parentOrShadowHostNode(nullptr) | |
| 261 , m_treeScope(treeScope) | 262 , m_treeScope(treeScope) |
| 262 , m_previous(nullptr) | 263 , m_previous(nullptr) |
| 263 , m_next(nullptr) | 264 , m_next(nullptr) |
| 264 { | 265 { |
| 266 NODE_FLAGS = type; |
| 265 ASSERT(m_treeScope || type == CreateDocument || type == CreateShadowRoot); | 267 ASSERT(m_treeScope || type == CreateDocument || type == CreateShadowRoot); |
| 266 #if !ENABLE(OILPAN) | 268 #if !ENABLE(OILPAN) |
| 267 if (m_treeScope) | 269 if (m_treeScope) |
| 268 m_treeScope->guardRef(); | 270 m_treeScope->guardRef(); |
| 269 #endif | 271 #endif |
| 270 | 272 |
| 271 #if !defined(NDEBUG) || (defined(DUMP_NODE_STATISTICS) && DUMP_NODE_STATISTICS) | 273 #if !defined(NDEBUG) || (defined(DUMP_NODE_STATISTICS) && DUMP_NODE_STATISTICS) |
| 272 trackForDebugging(); | 274 trackForDebugging(); |
| 273 #endif | 275 #endif |
| 274 InstanceCounters::incrementCounter(InstanceCounters::NodeCounter); | 276 InstanceCounters::incrementCounter(InstanceCounters::NodeCounter); |
| (...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 699 | 701 |
| 700 void Node::markAncestorsWithChildNeedsDistributionRecalc() | 702 void Node::markAncestorsWithChildNeedsDistributionRecalc() |
| 701 { | 703 { |
| 702 for (Node* node = this; node && !node->childNeedsDistributionRecalc(); node
= node->parentOrShadowHostNode()) | 704 for (Node* node = this; node && !node->childNeedsDistributionRecalc(); node
= node->parentOrShadowHostNode()) |
| 703 node->setChildNeedsDistributionRecalc(); | 705 node->setChildNeedsDistributionRecalc(); |
| 704 document().scheduleLayoutTreeUpdateIfNeeded(); | 706 document().scheduleLayoutTreeUpdateIfNeeded(); |
| 705 } | 707 } |
| 706 | 708 |
| 707 inline void Node::setStyleChange(StyleChangeType changeType) | 709 inline void Node::setStyleChange(StyleChangeType changeType) |
| 708 { | 710 { |
| 709 m_nodeFlags = (m_nodeFlags & ~StyleChangeMask) | changeType; | 711 NODE_FLAGS = (NODE_FLAGS & ~StyleChangeMask) | changeType; |
| 710 } | 712 } |
| 711 | 713 |
| 712 void Node::markAncestorsWithChildNeedsStyleRecalc() | 714 void Node::markAncestorsWithChildNeedsStyleRecalc() |
| 713 { | 715 { |
| 714 for (ContainerNode* p = parentOrShadowHostNode(); p && !p->childNeedsStyleRe
calc(); p = p->parentOrShadowHostNode()) | 716 for (ContainerNode* p = parentOrShadowHostNode(); p && !p->childNeedsStyleRe
calc(); p = p->parentOrShadowHostNode()) |
| 715 p->setChildNeedsStyleRecalc(); | 717 p->setChildNeedsStyleRecalc(); |
| 716 document().scheduleLayoutTreeUpdateIfNeeded(); | 718 document().scheduleLayoutTreeUpdateIfNeeded(); |
| 717 document().incStyleVersion(); | 719 document().incStyleVersion(); |
| 718 } | 720 } |
| 719 | 721 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 736 | 738 |
| 737 if (existingChangeType == NoStyleChange) | 739 if (existingChangeType == NoStyleChange) |
| 738 markAncestorsWithChildNeedsStyleRecalc(); | 740 markAncestorsWithChildNeedsStyleRecalc(); |
| 739 | 741 |
| 740 if (isElementNode() && hasRareData()) | 742 if (isElementNode() && hasRareData()) |
| 741 toElement(*this).setAnimationStyleChange(false); | 743 toElement(*this).setAnimationStyleChange(false); |
| 742 } | 744 } |
| 743 | 745 |
| 744 void Node::clearNeedsStyleRecalc() | 746 void Node::clearNeedsStyleRecalc() |
| 745 { | 747 { |
| 746 m_nodeFlags &= ~StyleChangeMask; | 748 NODE_FLAGS &= ~StyleChangeMask; |
| 747 | 749 |
| 748 clearSVGFilterNeedsLayerUpdate(); | 750 clearSVGFilterNeedsLayerUpdate(); |
| 749 | 751 |
| 750 if (isElementNode() && hasRareData()) | 752 if (isElementNode() && hasRareData()) |
| 751 toElement(*this).setAnimationStyleChange(false); | 753 toElement(*this).setAnimationStyleChange(false); |
| 752 } | 754 } |
| 753 | 755 |
| 754 bool Node::inActiveDocument() const | 756 bool Node::inActiveDocument() const |
| 755 { | 757 { |
| 756 return inDocument() && document().isActive(); | 758 return inDocument() && document().isActive(); |
| (...skipping 1634 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2391 | 2393 |
| 2392 void showNodePath(const blink::Node* node) | 2394 void showNodePath(const blink::Node* node) |
| 2393 { | 2395 { |
| 2394 if (node) | 2396 if (node) |
| 2395 node->showNodePathForThis(); | 2397 node->showNodePathForThis(); |
| 2396 else | 2398 else |
| 2397 fprintf(stderr, "Cannot showNodePath for (nil)\n"); | 2399 fprintf(stderr, "Cannot showNodePath for (nil)\n"); |
| 2398 } | 2400 } |
| 2399 | 2401 |
| 2400 #endif | 2402 #endif |
| OLD | NEW |