Changeset 106819 in webkit
- Timestamp:
- Feb 6, 2012 10:35:54 AM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r106818 r106819 1 2012-02-06 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org> 2 3 Move style related functions from NamedNodeMap to ElementAttributeData 4 https://bugs.webkit.org/show_bug.cgi?id=77879 5 6 Reviewed by Ryosuke Niwa. 7 8 This commit also removes the NamedNodeMap::mappedAttributeCount(), 9 which is a leftover from removal of mapped attributes. 10 11 * dom/ElementAttributeData.cpp: 12 (WebCore::ElementAttributeData::ensureInlineStyleDecl): 13 (WebCore): 14 (WebCore::ElementAttributeData::destroyInlineStyleDecl): 15 (WebCore::ElementAttributeData::ensureAttributeStyle): 16 * dom/ElementAttributeData.h: 17 (WebCore::ElementAttributeData::inlineStyleDecl): 18 (ElementAttributeData): 19 (WebCore::ElementAttributeData::attributeStyle): 20 * dom/NamedNodeMap.cpp: 21 * dom/NamedNodeMap.h: 22 * dom/StyledElement.h: 23 (StyledElement): 24 (WebCore::StyledElement::inlineStyleDecl): 25 (WebCore::StyledElement::ensureInlineStyleDecl): 26 (WebCore::StyledElement::attributeStyle): 27 (WebCore::StyledElement::ensureAttributeStyle): 28 (WebCore::StyledElement::destroyInlineStyleDecl): 29 1 30 2012-02-06 Abhishek Arya <inferno@chromium.org> 2 31 -
trunk/Source/WebCore/dom/ElementAttributeData.cpp
r106323 r106819 27 27 #include "ElementAttributeData.h" 28 28 29 #include "StyledElement.h" 30 29 31 namespace WebCore { 30 32 … … 34 36 } 35 37 38 StylePropertySet* ElementAttributeData::ensureInlineStyleDecl(Element* element) 39 { 40 if (!m_inlineStyleDecl) { 41 ASSERT(element->isStyledElement()); 42 m_inlineStyleDecl = StylePropertySet::createInline(static_cast<StyledElement*>(element)); 43 m_inlineStyleDecl->setStrictParsing(element->isHTMLElement() && !element->document()->inQuirksMode()); 44 } 45 return m_inlineStyleDecl.get(); 36 46 } 47 48 void ElementAttributeData::destroyInlineStyleDecl() 49 { 50 if (!m_inlineStyleDecl) 51 return; 52 m_inlineStyleDecl->clearParentElement(); 53 m_inlineStyleDecl = 0; 54 } 55 56 StylePropertySet* ElementAttributeData::ensureAttributeStyle() 57 { 58 if (!m_attributeStyle) { 59 m_attributeStyle = StylePropertySet::create(); 60 m_attributeStyle->setStrictParsing(false); 61 } 62 return m_attributeStyle.get(); 63 } 64 65 } -
trunk/Source/WebCore/dom/ElementAttributeData.h
r106756 r106819 43 43 void setIdForStyleResolution(const AtomicString& newId) { m_idForStyleResolution = newId; } 44 44 45 StylePropertySet* inlineStyleDecl() { return m_inlineStyleDecl.get(); } 46 StylePropertySet* ensureInlineStyleDecl(Element*); 47 void destroyInlineStyleDecl(); 48 49 StylePropertySet* attributeStyle() const { return m_attributeStyle.get(); } 50 StylePropertySet* ensureAttributeStyle(); 51 45 52 private: 46 53 friend class NamedNodeMap; -
trunk/Source/WebCore/dom/NamedNodeMap.cpp
r106756 r106819 31 31 #include "ExceptionCode.h" 32 32 #include "HTMLNames.h" 33 #include "StyledElement.h"34 33 35 34 namespace WebCore { … … 319 318 } 320 319 321 StylePropertySet* NamedNodeMap::ensureInlineStyleDecl()322 {323 if (!attributeData()->m_inlineStyleDecl) {324 ASSERT(m_element->isStyledElement());325 attributeData()->m_inlineStyleDecl = StylePropertySet::createInline(static_cast<StyledElement*>(m_element));326 attributeData()->m_inlineStyleDecl->setStrictParsing(m_element->isHTMLElement() && !m_element->document()->inQuirksMode());327 }328 return attributeData()->m_inlineStyleDecl.get();329 }330 331 void NamedNodeMap::destroyInlineStyleDecl()332 {333 if (!attributeData()->m_inlineStyleDecl)334 return;335 attributeData()->m_inlineStyleDecl->clearParentElement();336 attributeData()->m_inlineStyleDecl = 0;337 }338 339 StylePropertySet* NamedNodeMap::ensureAttributeStyle()340 {341 if (!attributeData()->m_attributeStyle) {342 attributeData()->m_attributeStyle = StylePropertySet::create();343 attributeData()->m_attributeStyle->setStrictParsing(false);344 }345 return attributeData()->m_attributeStyle.get();346 }347 348 320 } // namespace WebCore -
trunk/Source/WebCore/dom/NamedNodeMap.h
r106756 r106819 27 27 28 28 #include "Attribute.h" 29 #include "CSSPropertyNames.h"30 29 #include "ElementAttributeData.h" 31 30 #include "SpaceSplitString.h" … … 96 95 Element* element() const { return m_element; } 97 96 98 size_t mappedAttributeCount() const;99 100 97 ElementAttributeData* attributeData() { return &m_attributeData; } 101 98 const ElementAttributeData* attributeData() const { return &m_attributeData; } 102 103 StylePropertySet* inlineStyleDecl() { return attributeData()->m_inlineStyleDecl.get(); }104 StylePropertySet* ensureInlineStyleDecl();105 void destroyInlineStyleDecl();106 107 StylePropertySet* attributeStyle() const { return attributeData()->m_attributeStyle.get(); }108 StylePropertySet* ensureAttributeStyle();109 99 110 100 private: -
trunk/Source/WebCore/dom/StyledElement.h
r106770 r106819 37 37 virtual ~StyledElement(); 38 38 39 size_t mappedAttributeCount() const { return attributeMap() ? attributeMap()->mappedAttributeCount() : 0; }40 41 39 void addCSSLength(int id, const String& value); 42 40 void addCSSProperty(int id, const String& value); … … 50 48 void invalidateStyleAttribute(); 51 49 52 StylePropertySet* inlineStyleDecl() const { return attribute Map() ? attributeMap()->inlineStyleDecl() : 0; }53 StylePropertySet* ensureInlineStyleDecl() { return ensureAttribute Map()->ensureInlineStyleDecl(); }50 StylePropertySet* inlineStyleDecl() const { return attributeData() ? attributeData()->inlineStyleDecl() : 0; } 51 StylePropertySet* ensureInlineStyleDecl() { return ensureAttributeData()->ensureInlineStyleDecl(this); } 54 52 virtual CSSStyleDeclaration* style() OVERRIDE { return ensureInlineStyleDecl()->ensureCSSStyleDeclaration(); } 55 53 56 StylePropertySet* attributeStyle() const { return attribute Map() ? attributeMap()->attributeStyle() : 0; }57 StylePropertySet* ensureAttributeStyle() { return ensureAttribute Map()->ensureAttributeStyle(); }54 StylePropertySet* attributeStyle() const { return attributeData() ? attributeData()->attributeStyle() : 0; } 55 StylePropertySet* ensureAttributeStyle() { return ensureAttributeData()->ensureAttributeStyle(); } 58 56 59 57 const SpaceSplitString& classNames() const; … … 81 79 void destroyInlineStyleDecl() 82 80 { 83 if (attribute Map())84 attribute Map()->destroyInlineStyleDecl();81 if (attributeData()) 82 attributeData()->destroyInlineStyleDecl(); 85 83 } 86 84 };
Note: See TracChangeset
for help on using the changeset viewer.