Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 08cc264f5e2337bed167ab1d39c54057540c5bc2
https://github.com/WebKit/WebKit/commit/08cc264f5e2337bed167ab1d39c54057540c5bc2
Author: Joshua Hoffman <[email protected]>
Date: 2025-06-09 (Mon, 09 Jun 2025)
Changed paths:
A LayoutTests/accessibility/mac/designmode-lazy-spellchecking-expected.txt
A LayoutTests/accessibility/mac/designmode-lazy-spellchecking.html
A
LayoutTests/accessibility/mac/editable-page-lazy-spellchecking-expected.txt
A LayoutTests/accessibility/mac/editable-page-lazy-spellchecking.html
M LayoutTests/platform/mac-wk1/TestExpectations
M Source/WebCore/accessibility/AXCoreObject.h
M Source/WebCore/accessibility/AXLogger.cpp
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AXObjectCache.h
M Source/WebCore/accessibility/AccessibilityObject.cpp
M Source/WebCore/accessibility/AccessibilityObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
M Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h
M Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl
M Tools/WebKitTestRunner/InjectedBundle/Bindings/TextInputController.idl
M Tools/WebKitTestRunner/InjectedBundle/TextInputController.cpp
M Tools/WebKitTestRunner/InjectedBundle/TextInputController.h
M
Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp
M Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm
M Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm
M
Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.cpp
M Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp
Log Message:
-----------
AX: DidSpellCheck attribute not applied for editable pages/documents
https://bugs.webkit.org/show_bug.cgi?id=294103
rdar://149710398
Reviewed by Tyler Wilcock.
We did not previously consider an editable web area (page) to be an editible
ancestor, so the AXDidSpellCheck attribute would not be applied. This caused
certain ATs to not read out misspellings, if they handle the spellchecking.
This PR adds a new check to editableAncestor to return true if we hit a
web area that is also editable. New testing infrastructure was also added to
allow this attribute to be visible to tests that use the
attributedStringForTextMarkerRangeWithDidSpellCheck method.
* LayoutTests/accessibility/mac/designmode-lazy-spellchecking-expected.txt:
Added.
* LayoutTests/accessibility/mac/designmode-lazy-spellchecking.html: Added.
* LayoutTests/accessibility/mac/editable-page-lazy-spellchecking-expected.txt:
Added.
* LayoutTests/accessibility/mac/editable-page-lazy-spellchecking.html: Added.
* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/accessibility/AXCoreObject.h:
(WebCore::Accessibility::editableAncestor):
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::operator<<):
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handlePageEditibilityChanged):
(WebCore::AXObjectCache::updateIsolatedTree):
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isEditableWebArea const):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperties):
(WebCore::createIsolatedObjectData):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::setDesignMode):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::setEditable):
* Source/WebCore/page/Page.h:
(WebCore::Page::setEditable): Deleted.
* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetEditable):
* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* Tools/WebKitTestRunner/InjectedBundle/Bindings/TextInputController.idl:
* Tools/WebKitTestRunner/InjectedBundle/TextInputController.cpp:
(WTR::TextInputController::setPageEditable):
* Tools/WebKitTestRunner/InjectedBundle/TextInputController.h:
* Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithDidSpellCheck):
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithDidSpellCheck):
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::createJSStringRef):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithDidSpellCheck):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
*
Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.cpp:
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithDidSpellCheck):
* Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithDidSpellCheck):
Canonical link: https://commits.webkit.org/295998@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