Index: content/browser/accessibility/browser_accessibility_cocoa.mm |
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm |
index cc4735217e614309d0476ec4eaa602dc52d35a40..3ab3d20e45a684214ca093242f8b44202c3eecbd 100644 |
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm |
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm |
@@ -865,7 +865,7 @@ bool InitializeAccessibilityTreeSearch( |
- (NSNumber*)focused { |
BrowserAccessibilityManager* manager = browserAccessibility_->manager(); |
NSNumber* ret = [NSNumber numberWithBool: |
- manager->GetFocus(NULL) == browserAccessibility_]; |
+ manager->GetFocus() == browserAccessibility_]; |
return ret; |
} |
@@ -1322,7 +1322,9 @@ bool InitializeAccessibilityTreeSearch( |
- (NSArray*)selectedChildren { |
NSMutableArray* ret = [[[NSMutableArray alloc] init] autorelease]; |
BrowserAccessibilityManager* manager = browserAccessibility_->manager(); |
- BrowserAccessibility* focusedChild = manager->GetFocus(browserAccessibility_); |
+ BrowserAccessibility* focusedChild = manager->GetFocus(); |
+ if (!focusedChild->IsDescendantOf(browserAccessibility_)) |
+ focusedChild = nullptr; |
// If it's not multiselectable, try to skip iterating over the |
// children. |
@@ -2361,7 +2363,7 @@ bool InitializeAccessibilityTreeSearch( |
NSNumber* focusedNumber = value; |
BOOL focused = [focusedNumber intValue]; |
if (focused) |
- manager->SetFocus(browserAccessibility_, true); |
+ manager->SetFocus(*browserAccessibility_); |
} |
if ([attribute isEqualToString:NSAccessibilitySelectedTextRangeAttribute]) { |
NSRange range = [(NSValue*)value rangeValue]; |