| Index: third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
|
| diff --git a/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h b/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
|
| index b1d3653bde85001d20a9e38d1a433def529d2545..9060e14c2dba872558af8e8c2dfd2d0d605b6972 100644
|
| --- a/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
|
| +++ b/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.h
|
| @@ -33,8 +33,6 @@
|
| #include "core/dom/Element.h"
|
| #include "core/dom/TreeScope.h"
|
| #include "core/dom/shadow/SlotAssignment.h"
|
| -#include "wtf/DoublyLinkedList.h"
|
| -#include <iosfwd>
|
|
|
| namespace blink {
|
|
|
| @@ -54,10 +52,9 @@ enum class ShadowRootType {
|
| Closed
|
| };
|
|
|
| -class CORE_EXPORT ShadowRoot final : public DocumentFragment, public TreeScope, public DoublyLinkedListNode<ShadowRoot> {
|
| +class CORE_EXPORT ShadowRoot final : public DocumentFragment, public TreeScope {
|
| DEFINE_WRAPPERTYPEINFO();
|
| USING_GARBAGE_COLLECTED_MIXIN(ShadowRoot);
|
| - friend class WTF::DoublyLinkedListNode<ShadowRoot>;
|
| public:
|
| // FIXME: Current implementation does not work well if a shadow root is dynamically created.
|
| // So multiple shadow subtrees in several elements are prohibited.
|
| @@ -78,10 +75,13 @@ public:
|
| Element* host() const { return toElement(parentOrShadowHostNode()); }
|
| ElementShadow* owner() const { return host() ? host()->shadow() : 0; }
|
|
|
| - ShadowRoot* youngerShadowRoot() const { return prev(); }
|
| -
|
| + ShadowRoot* youngerShadowRoot() const;
|
| + ShadowRoot* olderShadowRoot() const;
|
| ShadowRoot* olderShadowRootForBindings() const;
|
|
|
| + void setYoungerShadowRoot(ShadowRoot&);
|
| + void setOlderShadowRoot(ShadowRoot&);
|
| +
|
| String mode() const { return (type() == ShadowRootType::V0 || type() == ShadowRootType::Open) ? "open" : "closed"; };
|
|
|
| bool isOpenOrV0() const { return type() == ShadowRootType::V0 || type() == ShadowRootType::Open; }
|
| @@ -135,11 +135,8 @@ public:
|
| using TreeScope::setDocument;
|
| using TreeScope::setParentTreeScope;
|
|
|
| -public:
|
| Element* activeElement() const;
|
|
|
| - ShadowRoot* olderShadowRoot() const { return next(); }
|
| -
|
| String innerHTML() const;
|
| void setInnerHTML(const String&, ExceptionState&);
|
|
|
| @@ -158,8 +155,8 @@ private:
|
|
|
| void childrenChanged(const ChildrenChange&) override;
|
|
|
| - ShadowRootRareData* ensureShadowRootRareData();
|
| - ShadowRootRareDataV0* ensureShadowRootRareDataV0();
|
| + ShadowRootRareData& ensureShadowRootRareData();
|
| + ShadowRootRareDataV0& ensureShadowRootRareDataV0();
|
|
|
| void addChildShadowRoot();
|
| void removeChildShadowRoot();
|
| @@ -174,11 +171,8 @@ private:
|
| void invalidateDescendantSlots();
|
| unsigned descendantSlotCount() const;
|
|
|
| - Member<ShadowRoot> m_prev;
|
| - Member<ShadowRoot> m_next;
|
| Member<ShadowRootRareData> m_shadowRootRareData;
|
| Member<ShadowRootRareDataV0> m_shadowRootRareDataV0;
|
| -
|
| Member<SlotAssignment> m_slotAssignment;
|
| unsigned m_numberOfStyles : 26;
|
| unsigned m_type : 2;
|
|
|