Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: df75d243cd12597351e8b7926be681b4584ca6ec
      
https://github.com/WebKit/WebKit/commit/df75d243cd12597351e8b7926be681b4584ca6ec
  Author: Andres Gonzalez <[email protected]>
  Date:   2024-01-19 (Fri, 19 Jan 2024)

  Changed paths:
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp

  Log Message:
  -----------
  AX: The AccessibilityText property of labeled objects is not updated when the 
label is removed.
https://bugs.webkit.org/show_bug.cgi?id=267768
<rdar://problem/121259687>

Reviewed by Tyler Wilcock.

This bug was masked by the block in AXIsolatedTree::removeNode that attempted 
to replaced the labeled isolated object with a new object. However, that 
approach is wasteful and causes other issues as it needs to dispatch the 
creation of the new isolated object to the main thread. This patch fixes these 
problems by just updating the AccessibilityText property of the labeled objects 
without replacing them, and doing it in the same main thread cycle as all the 
other isolated tree updates.

* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::remove):
(WebCore::AXObjectCache::dirtyIsolatedTreeRelations):
(WebCore::AXObjectCache::removeRelations):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperties):
(WebCore::AXIsolatedTree::removeNode):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to