Index: Source/web/ChromeClientImpl.cpp |
diff --git a/Source/web/ChromeClientImpl.cpp b/Source/web/ChromeClientImpl.cpp |
index 5c630a0903726bb82827764b04596e0e665ea085..31d3f10b02b151c8c9b857c48b94404d07fd522c 100644 |
--- a/Source/web/ChromeClientImpl.cpp |
+++ b/Source/web/ChromeClientImpl.cpp |
@@ -664,8 +664,14 @@ void ChromeClientImpl::setCursorForPlugin(const WebCursorInfo& cursor) |
void ChromeClientImpl::postAccessibilityNotification(AXObject* obj, AXObjectCache::AXNotification notification) |
{ |
// Alert assistive technology about the accessibility object notification. |
- if (!obj) |
+ if (!obj || !obj->documentFrameView()) |
return; |
+ |
+ WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(obj->documentFrameView()->frame()); |
+ if (webframe && webframe->client()) |
+ webframe->client()->postAccessibilityEvent(WebAXObject(obj), toWebAXEvent(notification)); |
+ |
+ // FIXME: delete these lines once Chrome only uses the frame client interface, above. |
if (m_webView->client()) |
m_webView->client()->postAccessibilityEvent(WebAXObject(obj), toWebAXEvent(notification)); |
} |