Index: content/browser/renderer_host/render_widget_host_view_android.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc |
index a56a1f1660e45fe09e3874134584212b5fcc74be..cf5cf24dd0e35a13c7f17ea94b49741ceeb9a070 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_android.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc |
@@ -1150,16 +1150,20 @@ |
content_view_core_->GetWindowAndroid()->RequestVSyncUpdate(); |
} |
-BrowserAccessibilityManager* |
- RenderWidgetHostViewAndroid::CreateBrowserAccessibilityManager( |
- BrowserAccessibilityDelegate* delegate) { |
- base::android::ScopedJavaLocalRef<jobject> obj; |
- if (content_view_core_) |
- obj = content_view_core_->GetJavaObject(); |
- return new BrowserAccessibilityManagerAndroid( |
- obj, |
- BrowserAccessibilityManagerAndroid::GetEmptyDocument(), |
- delegate); |
+void RenderWidgetHostViewAndroid::CreateBrowserAccessibilityManagerIfNeeded() { |
+ if (!host_ || host_->accessibility_mode() != AccessibilityModeComplete) |
+ return; |
+ |
+ if (!GetBrowserAccessibilityManager()) { |
+ base::android::ScopedJavaLocalRef<jobject> obj; |
+ if (content_view_core_) |
+ obj = content_view_core_->GetJavaObject(); |
+ SetBrowserAccessibilityManager( |
+ new BrowserAccessibilityManagerAndroid( |
+ obj, |
+ BrowserAccessibilityManagerAndroid::GetEmptyDocument(), |
+ host_)); |
+ } |
} |
bool RenderWidgetHostViewAndroid::LockMouse() { |
@@ -1264,14 +1268,12 @@ |
content_view_core_ = content_view_core; |
- BrowserAccessibilityManager* manager = NULL; |
- if (host_) |
- manager = host_->GetRootBrowserAccessibilityManager(); |
- if (manager) { |
+ if (GetBrowserAccessibilityManager()) { |
base::android::ScopedJavaLocalRef<jobject> obj; |
if (content_view_core_) |
obj = content_view_core_->GetJavaObject(); |
- manager->ToBrowserAccessibilityManagerAndroid()->SetContentViewCore(obj); |
+ GetBrowserAccessibilityManager()->ToBrowserAccessibilityManagerAndroid()-> |
+ SetContentViewCore(obj); |
} |
AttachLayers(); |