DescriptionFix a few lingering bugs in BrowserAccessibilityManager and BrowserAccessibilityCocoa.
- Actually reuse BrowserAccessibility's when we receive an AXLoadComplete notification (switch from using CreateAccessibilityTree to UpdateNode).
- add a check in BrowserAccessibilityManager::SetFocus to ensure we never try and ref count the same element. This means we released an element (and thereby destroy it) before we add ref it again. As it stands, the code does not encounter this case, since there's an implicit assumption that the focus_ element has ref count >= 2.
- add logic to BrowserAccessibilityCocoa so that it can inherit directly from NSObject; this brings us in line with the way Webkit's AccessibilityObjectWrapper on Mac works.
This will hopefully set us up to solve the problem of VoiceOver not acknowledging page transitions. The remaining issue is that RWHV's get destroyed on page transitions, thereby destroying our BrowserAccessibilityManager. This is likely why VoiceOver won't honor our AXLoadComplete notification.
BUG=none
TEST=manual.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=95572
Patch Set 1 : Initial patch. #Patch Set 2 : Fix some Win related issues. #Patch Set 3 : Fix corner case with removal of renderer to child id mappings. #
Total comments: 7
Patch Set 4 : add a unittest #
Total comments: 3
Patch Set 5 : Revise SPI comment with openradar link. #
Total comments: 2
Patch Set 6 : Expand comment. #Patch Set 7 : Fix indent. #Patch Set 8 : Fix Windows cast error. #
Total comments: 5
Messages
Total messages: 15 (0 generated)
|