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 6d0619dcc6f5c4d41fd1b4c1b6a2e366ec13a1f6..77861dbff5fc4fe0927cefa669cda37b44f7b374 100644 |
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm |
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm |
@@ -679,7 +679,7 @@ bool InitializeAccessibilityTreeSearch( |
- (NSNumber*)focused { |
BrowserAccessibilityManager* manager = browserAccessibility_->manager(); |
NSNumber* ret = [NSNumber numberWithBool: |
- manager->GetFocus(NULL) == browserAccessibility_]; |
+ manager->GetFocus() == browserAccessibility_]; |
return ret; |
} |
@@ -1136,7 +1136,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. |
@@ -2036,7 +2038,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]; |