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 b6b08ea2cbeb08e40b5e1f663b5defdee4223ecf..b7c15445528a27e4f729432973c87fc3377138ca 100644 |
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm |
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm |
@@ -16,6 +16,11 @@ |
#include "grit/webkit_strings.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebRect.h" |
+// See http://openradar.appspot.com/9896491. This SPI has been tested on 10.5, |
+// 10.6, and 10.7. It allows accessibility clients to observe events posted on |
+// this object. |
+extern "C" void NSAccessibilityUnregisterUniqueIdForUIElement(id element); |
+ |
typedef WebAccessibility::IntAttribute IntAttribute; |
typedef WebAccessibility::StringAttribute StringAttribute; |
@@ -247,6 +252,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
// Deletes our associated BrowserAccessibilityMac. |
- (void)dealloc { |
if (browserAccessibility_) { |
+ NSAccessibilityUnregisterUniqueIdForUIElement(self); |
delete browserAccessibility_; |
browserAccessibility_ = NULL; |
} |
@@ -830,5 +836,9 @@ NSDictionary* attributeToMethodNameMap = nil; |
return browserAccessibility_->renderer_id(); |
} |
+- (BOOL)accessibilityShouldUseUniqueId { |
+ return YES; |
+} |
+ |
@end |