| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008, 2009, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008, 2009, 2010 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008 David Smith <catfish.man@gmail.com> | 3 * Copyright (C) 2008 David Smith <catfish.man@gmail.com> |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 OwnPtrWillBeMember<ElementShadow> m_shadow; | 139 OwnPtrWillBeMember<ElementShadow> m_shadow; |
| 140 OwnPtrWillBeMember<NamedNodeMap> m_attributeMap; | 140 OwnPtrWillBeMember<NamedNodeMap> m_attributeMap; |
| 141 OwnPtrWillBeMember<WillBeHeapVector<RefPtrWillBeMember<Attr> > > m_attrNodeL
ist; | 141 OwnPtrWillBeMember<WillBeHeapVector<RefPtrWillBeMember<Attr> > > m_attrNodeL
ist; |
| 142 OwnPtrWillBeMember<InputMethodContext> m_inputMethodContext; | 142 OwnPtrWillBeMember<InputMethodContext> m_inputMethodContext; |
| 143 OwnPtrWillBeMember<ActiveAnimations> m_activeAnimations; | 143 OwnPtrWillBeMember<ActiveAnimations> m_activeAnimations; |
| 144 OwnPtrWillBeMember<InlineCSSStyleDeclaration> m_cssomWrapper; | 144 OwnPtrWillBeMember<InlineCSSStyleDeclaration> m_cssomWrapper; |
| 145 | 145 |
| 146 RefPtr<RenderStyle> m_computedStyle; | 146 RefPtr<RenderStyle> m_computedStyle; |
| 147 RefPtrWillBeMember<CustomElementDefinition> m_customElementDefinition; | 147 RefPtrWillBeMember<CustomElementDefinition> m_customElementDefinition; |
| 148 | 148 |
| 149 RefPtrWillBeMember<PseudoElement> m_marker; |
| 149 RefPtrWillBeMember<PseudoElement> m_generatedBefore; | 150 RefPtrWillBeMember<PseudoElement> m_generatedBefore; |
| 150 RefPtrWillBeMember<PseudoElement> m_generatedAfter; | 151 RefPtrWillBeMember<PseudoElement> m_generatedAfter; |
| 151 RefPtrWillBeMember<PseudoElement> m_generatedFirstLetter; | 152 RefPtrWillBeMember<PseudoElement> m_generatedFirstLetter; |
| 152 RefPtrWillBeMember<PseudoElement> m_backdrop; | 153 RefPtrWillBeMember<PseudoElement> m_backdrop; |
| 153 | 154 |
| 154 explicit ElementRareData(RenderObject*); | 155 explicit ElementRareData(RenderObject*); |
| 155 }; | 156 }; |
| 156 | 157 |
| 157 inline LayoutSize defaultMinimumSizeForResizing() | 158 inline LayoutSize defaultMinimumSizeForResizing() |
| 158 { | 159 { |
| 159 return LayoutSize(LayoutUnit::max(), LayoutUnit::max()); | 160 return LayoutSize(LayoutUnit::max(), LayoutUnit::max()); |
| 160 } | 161 } |
| 161 | 162 |
| 162 inline ElementRareData::ElementRareData(RenderObject* renderer) | 163 inline ElementRareData::ElementRareData(RenderObject* renderer) |
| 163 : NodeRareData(renderer) | 164 : NodeRareData(renderer) |
| 164 , m_tabindex(0) | 165 , m_tabindex(0) |
| 165 , m_minimumSizeForResizing(defaultMinimumSizeForResizing()) | 166 , m_minimumSizeForResizing(defaultMinimumSizeForResizing()) |
| 166 { | 167 { |
| 167 m_isElementRareData = true; | 168 m_isElementRareData = true; |
| 168 } | 169 } |
| 169 | 170 |
| 170 inline ElementRareData::~ElementRareData() | 171 inline ElementRareData::~ElementRareData() |
| 171 { | 172 { |
| 172 #if !ENABLE(OILPAN) | 173 #if !ENABLE(OILPAN) |
| 173 ASSERT(!m_shadow); | 174 ASSERT(!m_shadow); |
| 174 #endif | 175 #endif |
| 176 ASSERT(!m_marker); |
| 175 ASSERT(!m_generatedBefore); | 177 ASSERT(!m_generatedBefore); |
| 176 ASSERT(!m_generatedAfter); | 178 ASSERT(!m_generatedAfter); |
| 177 ASSERT(!m_generatedFirstLetter); | 179 ASSERT(!m_generatedFirstLetter); |
| 178 ASSERT(!m_backdrop); | 180 ASSERT(!m_backdrop); |
| 179 } | 181 } |
| 180 | 182 |
| 181 inline bool ElementRareData::hasPseudoElements() const | 183 inline bool ElementRareData::hasPseudoElements() const |
| 182 { | 184 { |
| 183 return m_generatedBefore || m_generatedAfter || m_backdrop || m_generatedFir
stLetter; | 185 return m_generatedBefore || m_generatedAfter || m_backdrop || m_generatedFir
stLetter || m_marker; |
| 184 } | 186 } |
| 185 | 187 |
| 186 inline void ElementRareData::clearPseudoElements() | 188 inline void ElementRareData::clearPseudoElements() |
| 187 { | 189 { |
| 188 setPseudoElement(BEFORE, nullptr); | 190 setPseudoElement(BEFORE, nullptr); |
| 189 setPseudoElement(AFTER, nullptr); | 191 setPseudoElement(AFTER, nullptr); |
| 190 setPseudoElement(BACKDROP, nullptr); | 192 setPseudoElement(BACKDROP, nullptr); |
| 193 setPseudoElement(MARKER, nullptr); |
| 191 setPseudoElement(FIRST_LETTER, nullptr); | 194 setPseudoElement(FIRST_LETTER, nullptr); |
| 192 } | 195 } |
| 193 | 196 |
| 194 inline void ElementRareData::setPseudoElement(PseudoId pseudoId, PassRefPtrWillB
eRawPtr<PseudoElement> element) | 197 inline void ElementRareData::setPseudoElement(PseudoId pseudoId, PassRefPtrWillB
eRawPtr<PseudoElement> element) |
| 195 { | 198 { |
| 196 switch (pseudoId) { | 199 switch (pseudoId) { |
| 200 case MARKER: |
| 201 if (m_marker) |
| 202 m_marker->dispose(); |
| 203 m_marker = element; |
| 204 break; |
| 197 case BEFORE: | 205 case BEFORE: |
| 198 if (m_generatedBefore) | 206 if (m_generatedBefore) |
| 199 m_generatedBefore->dispose(); | 207 m_generatedBefore->dispose(); |
| 200 m_generatedBefore = element; | 208 m_generatedBefore = element; |
| 201 break; | 209 break; |
| 202 case AFTER: | 210 case AFTER: |
| 203 if (m_generatedAfter) | 211 if (m_generatedAfter) |
| 204 m_generatedAfter->dispose(); | 212 m_generatedAfter->dispose(); |
| 205 m_generatedAfter = element; | 213 m_generatedAfter = element; |
| 206 break; | 214 break; |
| 207 case BACKDROP: | 215 case BACKDROP: |
| 208 if (m_backdrop) | 216 if (m_backdrop) |
| 209 m_backdrop->dispose(); | 217 m_backdrop->dispose(); |
| 210 m_backdrop = element; | 218 m_backdrop = element; |
| 211 break; | 219 break; |
| 212 case FIRST_LETTER: | 220 case FIRST_LETTER: |
| 213 if (m_generatedFirstLetter) | 221 if (m_generatedFirstLetter) |
| 214 m_generatedFirstLetter->dispose(); | 222 m_generatedFirstLetter->dispose(); |
| 215 m_generatedFirstLetter = element; | 223 m_generatedFirstLetter = element; |
| 216 break; | 224 break; |
| 217 default: | 225 default: |
| 218 ASSERT_NOT_REACHED(); | 226 ASSERT_NOT_REACHED(); |
| 219 } | 227 } |
| 220 } | 228 } |
| 221 | 229 |
| 222 inline PseudoElement* ElementRareData::pseudoElement(PseudoId pseudoId) const | 230 inline PseudoElement* ElementRareData::pseudoElement(PseudoId pseudoId) const |
| 223 { | 231 { |
| 224 switch (pseudoId) { | 232 switch (pseudoId) { |
| 233 case MARKER: |
| 234 return m_marker.get(); |
| 225 case BEFORE: | 235 case BEFORE: |
| 226 return m_generatedBefore.get(); | 236 return m_generatedBefore.get(); |
| 227 case AFTER: | 237 case AFTER: |
| 228 return m_generatedAfter.get(); | 238 return m_generatedAfter.get(); |
| 229 case BACKDROP: | 239 case BACKDROP: |
| 230 return m_backdrop.get(); | 240 return m_backdrop.get(); |
| 231 case FIRST_LETTER: | 241 case FIRST_LETTER: |
| 232 return m_generatedFirstLetter.get(); | 242 return m_generatedFirstLetter.get(); |
| 233 default: | 243 default: |
| 234 return 0; | 244 return 0; |
| 235 } | 245 } |
| 236 } | 246 } |
| 237 | 247 |
| 238 } // namespace | 248 } // namespace |
| 239 | 249 |
| 240 #endif // ElementRareData_h | 250 #endif // ElementRareData_h |
| OLD | NEW |