New issue
Advanced search Search tips

Issue 764025 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug
Team-Accessibility



Sign in to add a comment

Landmark names not updated dynamically

Project Member Reported by aleventhal@chromium.org, Sep 11 2017

Issue description

Can repro with any screen reader on Windows or Mac.
 

Steps with JAWS: 
1. Load https://fiddle.jshell.net/tzhdbp23/show/light/ 
2. Look at the landmark list with ctrl-jawskey-r.
3. Note that the label on main is “Hello”, which is the same as the H1.
4. Now, press the do it button. This changes the H1 and the label on main.
5. Press ctrl-jawskey-r and you will see the label on main is still “Hello” instead of being the same as the H1.
 
- On Mac, you can do the same using ctrl-opt-u and looking at the landmark menu.
- This affects Facebook messenger
 
Note from Dmazzoni on chat: "i'm wondering if we could just generalize id_to_aria_owners_mapping_[in AXObjectCacheImpl] to handle all reverse relationships. my gut instinct is that it will be faster and more efficient to lump all of the reverse relationships together. 
it's harmless for blink to post an event on a node that didn't actually change - enough of the event refactoring is done that no native events will be fired as a result - so that should simplify it"
I think this may be related to bugs  641325  or  641324 


Project Member

Comment 3 by bugdroid1@chromium.org, Sep 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/88f20c18ffd3ee20b7d5ebd82622468f409f8596

commit 88f20c18ffd3ee20b7d5ebd82622468f409f8596
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Mon Sep 18 19:59:11 2017

Refactor relations

This moves AXObjectCacheImpl's code related to relations (specifically aria-owns at this point), into it's own class and makes the code simpler to understand.
This is pre-work for addressing issues with aria-labelledby. 
 

Bug:  764025 ,  641325 ,  641324 
Change-Id: I182f6577393927cf1e93bf9849e7b1ed2c87719c
Reviewed-on: https://chromium-review.googlesource.com/669004
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502654}
[modify] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp
[modify] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.cpp
[modify] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.h
[add] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/AXRelationCache.cpp
[add] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/AXRelationCache.h
[modify] https://crrev.com/88f20c18ffd3ee20b7d5ebd82622468f409f8596/third_party/WebKit/Source/modules/accessibility/BUILD.gn

Project Member

Comment 4 by bugdroid1@chromium.org, Sep 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5

commit b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Thu Sep 21 02:35:43 2017

Update source end of relationships when the related target content changes

Use reverse relation map to track probable relations for aria-owns,
aria-labelledby and aria-describedby. Update source AX nodes when related
content changes. This allows relevant names and descriptions to update.

Bug:  764025 ,  641325 ,  641324 
Change-Id: Ic04ef4aa27354100b7ee8f52ca5a0c830490c19c
Reviewed-on: https://chromium-review.googlesource.com/671964
Reviewed-by: David Tseng <dtseng@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#503326}
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/chrome/browser/extensions/api/automation/automation_apitest.cc
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/chrome/test/data/extensions/api_test/automation/sites/tree_change_indirect.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/chrome/test/data/extensions/api_test/automation/tests/tabs/tree_change_indirect.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/chrome/test/data/extensions/api_test/automation/tests/tabs/tree_change_indirect.js
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/browser/accessibility/dump_accessibility_tree_browsertest.cc
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/aria/aria-describedby-updates-expected-blink.txt
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/aria/aria-describedby-updates.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/aria/aria-labelledby-updates-expected-blink.txt
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/aria/aria-labelledby-updates.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/event/description-change-indirect-expected-win.txt
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/event/description-change-indirect.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/event/name-change-indirect-expected-win.txt
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/event/name-change-indirect.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/html/label-updates-expected-blink.txt
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/content/test/data/accessibility/html/label-updates.html
[add] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/LayoutTests/accessibility/text-changes-with-relations.html
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXObject.cpp
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXObject.h
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.cpp
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.h
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXRelationCache.cpp
[modify] https://crrev.com/b9faeb790e3b4da0ffa9bce876d35b0f1083fdb5/third_party/WebKit/Source/modules/accessibility/AXRelationCache.h

Status: Fixed (was: Available)

Sign in to add a comment