Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ec977c8ae18ef88320387a697ba4231c5ac94820
      
https://github.com/WebKit/WebKit/commit/ec977c8ae18ef88320387a697ba4231c5ac94820
  Author: Nipun Shukla <[email protected]>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M Source/WebCore/dom/ComposedTreeAncestorIterator.h
    M Source/WebCore/dom/ComposedTreeIterator.h
    M Source/WebCore/dom/Element.cpp
    M Source/WebCore/dom/Element.h
    M Source/WebCore/dom/ElementRareData.cpp
    M Source/WebCore/dom/ElementRareData.h
    M Source/WebCore/dom/Node.cpp
    M Source/WebCore/dom/Node.h
    M Source/WebCore/dom/NodeRareData.h
    M Source/WebCore/page/text-extraction/TextExtraction.cpp
    M Source/WebCore/style/StyleExtractor.cpp

  Log Message:
  -----------
  Move shadow root out of ElementRareData and into Element
https://bugs.webkit.org/show_bug.cgi?id=308341
rdar://170835643

Reviewed by Ryosuke Niwa.

Store shadow root as a member of Element instead of in
ElementRareData, eliminating ElementRareData allocations.
Remove the redundant HasShadowRoot state flag and related
infrastructure.

There is no behavior change, correctness will be verified
with existing tests.

* Source/WebCore/dom/ComposedTreeAncestorIterator.h:
* Source/WebCore/dom/ComposedTreeIterator.h:
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::addShadowRoot):
(WebCore::Element::removeShadowRoot):
(WebCore::Element::removeShadowRootSlow):
* Source/WebCore/dom/Element.h:
(WebCore::Node::shadowRoot const):
(WebCore::Element::shadowRoot const):
* Source/WebCore/dom/ElementRareData.cpp:
* Source/WebCore/dom/ElementRareData.h:
(WebCore::ElementRareData::useTypes const):
(WebCore::ElementRareData::~ElementRareData):
(WebCore::ElementRareData::clearShadowRoot): Deleted.
(WebCore::ElementRareData::shadowRoot const): Deleted.
(WebCore::ElementRareData::setShadowRoot): Deleted.
(WebCore::Node::shadowRoot const):
(WebCore::Element::shadowRoot const):
(WebCore::Element::removeShadowRoot): Deleted.
* Source/WebCore/dom/Node.cpp:
(WebCore::stringForRareDataUseType):
* Source/WebCore/dom/Node.h:
(WebCore::Node::hasShadowRoot const): Deleted.
(WebCore::Node::setHasShadowRoot): Deleted.
* Source/WebCore/dom/NodeRareData.h:
* Source/WebCore/page/text-extraction/TextExtraction.cpp:
* Source/WebCore/style/StyleExtractor.cpp:

Canonical link: https://commits.webkit.org/308069@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to