Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 6e8da912601c222f0ebd22c1780bcfbc0903e948
https://github.com/WebKit/WebKit/commit/6e8da912601c222f0ebd22c1780bcfbc0903e948
Author: Tyler Wilcock <[email protected]>
Date: 2026-10-06 (Tue, 06 Oct 2026)
Changed paths:
A LayoutTests/accessibility/isolated-tree/radio-group-required-expected.txt
A LayoutTests/accessibility/isolated-tree/radio-group-required.html
A LayoutTests/accessibility/radio-group-required-expected.txt
A LayoutTests/accessibility/radio-group-required.html
M LayoutTests/platform/ios/TestExpectations
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AccessibilityNodeObject.cpp
Log Message:
-----------
AX: In a radio group with the required attribute on one button, the other
buttons aren't exposed as required
https://bugs.webkit.org/show_bug.cgi?id=326219
rdar://189100525
Reviewed by Dominic Mazzoni.
A radio group is required when any of its buttons has the required attribute,
and form validation treats
it that way. Pages often put the attribute on the first button only, but
accessibility only checked each
button's own attribute, so VoiceOver said "required" on the first option and
not on the others.
Treat a radio button as required when its group is. A change to one button's
required attribute, or a
required button joining or leaving the group, changes the rest of the group
too, so update the other
buttons in the isolated tree as well.
* LayoutTests/accessibility/isolated-tree/radio-group-required-expected.txt:
Added.
* LayoutTests/accessibility/isolated-tree/radio-group-required.html: Added.
* LayoutTests/accessibility/radio-group-required-expected.txt: Added.
* LayoutTests/accessibility/radio-group-required.html: Added.
* LayoutTests/platform/ios/TestExpectations:
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleAttributeChange):
(WebCore::AXObjectCache::updateIsolatedTree):
* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isRequired const):
Canonical link: https://commits.webkit.org/322894@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications