|
Browser accessibility improvements so that screen readers can access more
complicated webpages without problems.
First, WebAccessibility now works around a "multiple inheritance problem"
in WebCore::AccessibilityObject where the same node appears as a child of
multiple parents. For example, a table cell appears as a child of both a
row and a column. This is solved by having each WebAccessibility parent
check whether the child lists itself as an ancestor. If not, it notes the
child's id only in a separate vector, so each child appears fully only once.
Second, BrowserAccessibility now has internal reference counting, which allows
BrowserAccessibilityManager to update any subtree while maximally reusing
as many objects as possible. This fixes many screen reader interaction
problems!
All of this new functionality is tested with new cross-platform tests.
BUG= 67192
BUG= 67620
TEST=Adds new unit tests and a browser test.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=77316
Total comments: 33
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+864 lines, -184 lines) |
Patch |
 |
M |
chrome/browser/accessibility/accessibility_win_browsertest.cc
|
View
|
1
2
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility.h
|
View
|
1
2
|
6 chunks |
+59 lines, -9 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+53 lines, -14 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_mac.h
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_mac.mm
|
View
|
1
2
|
2 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_manager.h
|
View
|
1
2
|
4 chunks |
+7 lines, -19 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_manager.cc
|
View
|
1
2
3
4
|
6 chunks |
+101 lines, -92 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_manager_mac.mm
|
View
|
1
2
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/accessibility/browser_accessibility_manager_unittest.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+549 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_manager_win.cc
|
View
|
1
2
|
2 chunks |
+6 lines, -6 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_win.h
|
View
|
1
2
|
2 chunks |
+2 lines, -9 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_win.cc
|
View
|
1
2
|
4 chunks |
+7 lines, -20 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/browser_accessibility_win_unittest.cc
|
View
|
1
2
|
2 chunks |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/accessibility/renderer_accessibility_browsertest.cc
|
View
|
1
2
|
1 chunk |
+36 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_tests.gypi
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/common/render_messages.cc
|
View
|
1
2
3
|
3 chunks |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
webkit/glue/webaccessibility.h
|
View
|
1
2
|
2 chunks |
+6 lines, -1 line |
0 comments
|
Download
|
 |
M |
webkit/glue/webaccessibility.cc
|
View
|
1
2
|
2 chunks |
+22 lines, -8 lines |
0 comments
|
Download
|
Total messages: 8 (0 generated)
|