Changeset 139839 in webkit
- Timestamp:
- Jan 15, 2013 11:36:55 PM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r139838 r139839 1 2013-01-16 Ryosuke Niwa <rniwa@webkit.org> 2 3 Get rid of Node::createRareData 4 https://bugs.webkit.org/show_bug.cgi?id=106981 5 6 Reviewed by Benjamin Poulain. 7 8 Deleted Node::createRareData. Node::ensureRareData() instantiates NodeRareData 9 or ElementRareData according to the node type. Also encapsulate new by create 10 functions in NodeRareData and ElementRareData. 11 12 * dom/Element.cpp: 13 (WebCore): 14 * dom/Element.h: 15 (Element): 16 * dom/ElementRareData.h: 17 (WebCore::ElementRareData::create): 18 (ElementRareData): 19 (WebCore::ElementRareData::ElementRareData): 20 * dom/Node.cpp: 21 (WebCore::Node::ensureRareData): 22 (WebCore): 23 * dom/Node.h: 24 (WebCore::NodeRareDataBase::NodeRareDataBase): 25 * dom/NodeRareData.h: 26 (NodeRareData): 27 (WebCore::NodeRareData::create): 28 (WebCore::NodeRareData::NodeRareData): 29 1 30 2013-01-15 Ryosuke Niwa <rniwa@webkit.org> 2 31 -
trunk/Source/WebCore/dom/Element.cpp
r139681 r139839 224 224 } 225 225 226 PassOwnPtr<NodeRareData> Element::createRareData()227 {228 return adoptPtr(new ElementRareData());229 }230 231 226 void Element::clearTabIndexExplicitlyIfNeeded() 232 227 { -
trunk/Source/WebCore/dom/Element.h
r139681 r139839 581 581 582 582 QualifiedName m_tagName; 583 virtual PassOwnPtr<NodeRareData> createRareData();584 583 bool rareDataStyleAffectedByEmpty() const; 585 584 bool rareDataChildrenAffectedByHover() const; -
trunk/Source/WebCore/dom/ElementRareData.h
r139833 r139839 36 36 class ElementRareData : public NodeRareData { 37 37 public: 38 ElementRareData(); 38 static PassOwnPtr<ElementRareData> create(RenderObject* renderer) { return adoptPtr(new ElementRareData(renderer)); } 39 39 40 ~ElementRareData(); 40 41 … … 173 174 RefPtr<PseudoElement> m_generatedAfter; 174 175 176 ElementRareData(RenderObject*); 175 177 void releasePseudoElement(PseudoElement*); 176 178 }; … … 181 183 } 182 184 183 inline ElementRareData::ElementRareData() 184 : m_tabIndex(0) 185 inline ElementRareData::ElementRareData(RenderObject* renderer) 186 : NodeRareData(renderer) 187 , m_tabIndex(0) 185 188 , m_childIndex(0) 186 189 , m_tabIndexWasSetExplicitly(false) -
trunk/Source/WebCore/dom/Node.cpp
r139838 r139839 453 453 return rareData(); 454 454 455 NodeRareData* data = createRareData().leakPtr(); 455 NodeRareData* data; 456 if (isElementNode()) 457 data = ElementRareData::create(m_data.m_renderer).leakPtr(); 458 else 459 data = NodeRareData::create(m_data.m_renderer).leakPtr(); 456 460 ASSERT(data); 457 data->setRenderer(m_data.m_renderer); 461 458 462 m_data.m_rareData = data; 459 463 setFlag(HasRareDataFlag); 460 464 return data; 461 }462 463 PassOwnPtr<NodeRareData> Node::createRareData()464 {465 return adoptPtr(new NodeRareData());466 465 } 467 466 -
trunk/Source/WebCore/dom/Node.h
r139833 r139839 117 117 118 118 protected: 119 NodeRareDataBase() { } 119 NodeRareDataBase(RenderObject* renderer) 120 : m_renderer(renderer) 121 { } 120 122 121 123 private: … … 786 788 virtual void derefEventTarget(); 787 789 788 virtual PassOwnPtr<NodeRareData> createRareData();789 790 790 virtual RenderStyle* nonRendererStyle() const { return 0; } 791 791 -
trunk/Source/WebCore/dom/NodeRareData.h
r139833 r139839 277 277 class NodeRareData : public NodeRareDataBase { 278 278 WTF_MAKE_NONCOPYABLE(NodeRareData); WTF_MAKE_FAST_ALLOCATED; 279 public: 280 NodeRareData() 281 { } 279 public: 280 static PassOwnPtr<NodeRareData> create(RenderObject* renderer) { return adoptPtr(new NodeRareData(renderer)); } 282 281 283 282 void clearNodeLists() { m_nodeLists.clear(); } … … 310 309 void reportMemoryUsage(MemoryObjectInfo*) const; 311 310 311 protected: 312 NodeRareData(RenderObject* renderer) 313 : NodeRareDataBase(renderer) 314 { } 315 312 316 private: 313 317 OwnPtr<NodeListsNodeData> m_nodeLists;
Note: See TracChangeset
for help on using the changeset viewer.