Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e2e8c4d0c409bcc8195459ee8c2279a9174b95ea
https://github.com/WebKit/WebKit/commit/e2e8c4d0c409bcc8195459ee8c2279a9174b95ea
Author: Tyler Wilcock <[email protected]>
Date: 2024-08-13 (Tue, 13 Aug 2024)
Changed paths:
M
LayoutTests/imported/w3c/web-platform-tests/html/dom/aria-element-reflection-disconnected-expected.txt
M Source/WebCore/dom/Element.cpp
Log Message:
-----------
Element reflection attributes should be able to retrieve disconnected elements
https://bugs.webkit.org/show_bug.cgi?id=277956
rdar://133693674
Reviewed by Ryosuke Niwa.
Because disconnected elements are not stored in TreeScope::m_elementsById,
we failed to return them from element reflection getters
`Element::getElementAttribute`
and `Element::getElementsArrayAttribute`. But the spec does not require elements
to be connected to be returned from these mechanisms:
https://html.spec.whatwg.org/#attr-associated-element
This patch fixes this by continuing to use TreeScope::getElementById() for
connected elements,
and walking the tree to find the element-by-id for disconnected elements.
Inspired by
https://github.com/chromium/chromium/commit/b237124847af1f6a8316af8fb5c78e35bd03df0a.
*
LayoutTests/imported/w3c/web-platform-tests/html/dom/aria-element-reflection-disconnected-expected.txt:
Mark this test as passing.
* Source/WebCore/dom/Element.cpp:
(WebCore::getElementByIdIncludingDisconnected):
Added.
(WebCore::Element::getElementAttribute const):
(WebCore::Element::getElementsArrayAttribute const):
Handle disconnected nodes.
(WebCore::Element::customElementDefaultARIA):
Drive-by fix to spelling: deafult -> default
Canonical link: https://commits.webkit.org/282204@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes