Index: ui/views/cocoa/bridged_content_view.mm |
diff --git a/ui/views/cocoa/bridged_content_view.mm b/ui/views/cocoa/bridged_content_view.mm |
index 7c49cd0444346d7291793796970f16a6d7a7c505..6b34a4af9919308120065bdb4a4e0c54b7e79a40 100644 |
--- a/ui/views/cocoa/bridged_content_view.mm |
+++ b/ui/views/cocoa/bridged_content_view.mm |
@@ -10,6 +10,7 @@ |
#import "base/mac/sdk_forward_declarations.h" |
#include "base/strings/sys_string_conversions.h" |
#include "skia/ext/skia_utils_mac.h" |
+#import "ui/accessibility/platform/ax_platform_node_mac.h" |
#include "ui/base/cocoa/cocoa_base_utils.h" |
#include "ui/base/dragdrop/drag_drop_types.h" |
#include "ui/base/dragdrop/os_exchange_data_provider_mac.h" |
@@ -1421,9 +1422,14 @@ NSAttributedString* GetAttributedString( |
// NSAccessibility informal protocol implementation. |
- (id)accessibilityAttributeValue:(NSString*)attribute { |
- if ([attribute isEqualToString:NSAccessibilityChildrenAttribute]) { |
- return @[ hostedView_->GetNativeViewAccessible() ]; |
- } |
+ if ([attribute isEqualToString:NSAccessibilityChildrenAttribute]) |
+ return [((AXPlatformNodeCocoa*)hostedView_->GetNativeViewAccessible()) |
+ accessibilityAttributeValue:attribute]; |
+ else if ([attribute isEqualToString:NSAccessibilityParentAttribute]) |
+ // BridgedContentView is the top level for Views in a Widget. |
+ return self; |
+ else if ([attribute isEqualToString:NSAccessibilityRoleAttribute]) |
+ return NSAccessibilityWindowRole; |
return [super accessibilityAttributeValue:attribute]; |
} |