Title: [141132] trunk/Source/WebCore
- Revision
- 141132
- Author
- [email protected]
- Date
- 2013-01-29 10:22:03 -0800 (Tue, 29 Jan 2013)
Log Message
Move ElementShadow creation to ElementRareData
https://bugs.webkit.org/show_bug.cgi?id=108195
Reviewed by Dimitri Glazkov.
Move the creation of ElementShadow to ElementRareData
for better encapsulation, and get rid of ElementRareData::setShadow.
No new tests, just refactoring.
* dom/Element.cpp:
(WebCore::Element::~Element): Use clearShadow() instead of setShadow which is removed.
(WebCore::Element::shadow):
(WebCore::Element::ensureShadow): Use ElementRareData::ensureShadow().
* dom/ElementRareData.h:
(WebCore::ElementRareData::clearShadow): Added.
(WebCore::ElementRareData::ensureShadow): Added.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (141131 => 141132)
--- trunk/Source/WebCore/ChangeLog 2013-01-29 18:16:03 UTC (rev 141131)
+++ trunk/Source/WebCore/ChangeLog 2013-01-29 18:22:03 UTC (rev 141132)
@@ -1,3 +1,23 @@
+2013-01-29 Elliott Sprehn <[email protected]>
+
+ Move ElementShadow creation to ElementRareData
+ https://bugs.webkit.org/show_bug.cgi?id=108195
+
+ Reviewed by Dimitri Glazkov.
+
+ Move the creation of ElementShadow to ElementRareData
+ for better encapsulation, and get rid of ElementRareData::setShadow.
+
+ No new tests, just refactoring.
+
+ * dom/Element.cpp:
+ (WebCore::Element::~Element): Use clearShadow() instead of setShadow which is removed.
+ (WebCore::Element::shadow):
+ (WebCore::Element::ensureShadow): Use ElementRareData::ensureShadow().
+ * dom/ElementRareData.h:
+ (WebCore::ElementRareData::clearShadow): Added.
+ (WebCore::ElementRareData::ensureShadow): Added.
+
2013-01-29 Alpha Lam <[email protected]>
[chromium] Unreviewed build fix.
Modified: trunk/Source/WebCore/dom/Element.cpp (141131 => 141132)
--- trunk/Source/WebCore/dom/Element.cpp 2013-01-29 18:16:03 UTC (rev 141131)
+++ trunk/Source/WebCore/dom/Element.cpp 2013-01-29 18:22:03 UTC (rev 141132)
@@ -198,7 +198,7 @@
if (ElementShadow* elementShadow = shadow()) {
elementShadow->removeAllShadowRoots();
- elementRareData()->setShadow(nullptr);
+ elementRareData()->clearShadow();
}
if (hasSyntheticAttrChildNodes())
@@ -1437,20 +1437,12 @@
ElementShadow* Element::shadow() const
{
- if (!hasRareData())
- return 0;
-
- return elementRareData()->shadow();
+ return hasRareData() ? elementRareData()->shadow() : 0;
}
ElementShadow* Element::ensureShadow()
{
- if (ElementShadow* shadow = ensureElementRareData()->shadow())
- return shadow;
-
- ElementRareData* data = ""
- data->setShadow(ElementShadow::create());
- return data->shadow();
+ return ensureElementRareData()->ensureShadow();
}
void Element::didAffectSelector(AffectedSelectorMask mask)
Modified: trunk/Source/WebCore/dom/ElementRareData.h (141131 => 141132)
--- trunk/Source/WebCore/dom/ElementRareData.h 2013-01-29 18:16:03 UTC (rev 141131)
+++ trunk/Source/WebCore/dom/ElementRareData.h 2013-01-29 18:22:03 UTC (rev 141132)
@@ -93,8 +93,14 @@
// Manually called by Node::reportMemoryUsage.
void reportMemoryUsage(MemoryObjectInfo*) const;
+ void clearShadow() { m_shadow = nullptr; }
ElementShadow* shadow() const { return m_shadow.get(); }
- void setShadow(PassOwnPtr<ElementShadow> shadow) { m_shadow = shadow; }
+ ElementShadow* ensureShadow()
+ {
+ if (!m_shadow)
+ m_shadow = ElementShadow::create();
+ return m_shadow.get();
+ }
NamedNodeMap* attributeMap() const { return m_attributeMap.get(); }
void setAttributeMap(PassOwnPtr<NamedNodeMap> attributeMap) { m_attributeMap = attributeMap; }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes