[webkit-changes] [WebKit/WebKit] f78fd4: AX: `aria-activedescendant` doesn't work with a st...

Chris Fleizach noreply at github.com
Wed Jan 4 23:09:24 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f78fd4847fdb47a9159a81e971c8b2af61d8d197
      https://github.com/WebKit/WebKit/commit/f78fd4847fdb47a9159a81e971c8b2af61d8d197
  Author: Chris Fleizach <cfleizach at apple.com>
  Date:   2023-01-04 (Wed, 04 Jan 2023)

  Changed paths:
    A LayoutTests/accessibility/mac/active-descendant-with-aria-controls-expected.txt
    A LayoutTests/accessibility/mac/active-descendant-with-aria-controls.html
    A LayoutTests/accessibility/mac/relationships-in-frames-expected.txt
    A LayoutTests/accessibility/mac/relationships-in-frames.html
    M Source/WebCore/accessibility/AXObjectCache.cpp

  Log Message:
  -----------
  AX: `aria-activedescendant` doesn't work with a standard "listbox" pattern
https://bugs.webkit.org/show_bug.cgi?id=224582
rdar://76670072

Reviewed by Andres Gonzalez.

There were a few things preventing this from working.
1) Relationships in frames were broken after the change to cache relationships in a central map.
2) activeDescendant wasn't checking if the right frame was focused.
3) activeDescendant needed to handle the aria-controls case in order to pick the right target for a notification.
4) A VoiceOver side fix also was required: rdar://103609280

* LayoutTests/accessibility/mac/active-descendant-with-aria-controls-expected.txt: Added.
* LayoutTests/accessibility/mac/active-descendant-with-aria-controls.html: Added.
* LayoutTests/accessibility/mac/relationships-in-frames-expected.txt: Added.
* LayoutTests/accessibility/mac/relationships-in-frames.html: Added.
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleActiveDescendantChanged):
(WebCore::AXObjectCache::updateRelationsForTree):

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




More information about the webkit-changes mailing list