diff options
author | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-08 08:26:50 +0000 |
---|---|---|
committer | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-08 08:26:50 +0000 |
commit | 2aafe928e1143b9abc123ca8b2803411b6047827 (patch) | |
tree | fa5c65f27ffb6056f1966910416c06207d997a16 /content/browser/accessibility | |
parent | 01543d7bbfd50774b2cac203c45072cb9cbef17f (diff) | |
download | chromium_src-2aafe928e1143b9abc123ca8b2803411b6047827.zip chromium_src-2aafe928e1143b9abc123ca8b2803411b6047827.tar.gz chromium_src-2aafe928e1143b9abc123ca8b2803411b6047827.tar.bz2 |
Fire ax focus on root document when root changes.
BUG=347448
Review URL: https://codereview.chromium.org/227773002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262343 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/accessibility')
6 files changed, 13 insertions, 4 deletions
diff --git a/content/browser/accessibility/browser_accessibility_manager.cc b/content/browser/accessibility/browser_accessibility_manager.cc index a71ed6e..a28f690 100644 --- a/content/browser/accessibility/browser_accessibility_manager.cc +++ b/content/browser/accessibility/browser_accessibility_manager.cc @@ -203,7 +203,7 @@ void BrowserAccessibilityManager::SetFocus( void BrowserAccessibilityManager::SetRoot(BrowserAccessibility* node) { root_ = node; - NotifyRootChanged(); + OnRootChanged(); } void BrowserAccessibilityManager::DoDefaultAction( diff --git a/content/browser/accessibility/browser_accessibility_manager.h b/content/browser/accessibility/browser_accessibility_manager.h index 719230c..3dafaab 100644 --- a/content/browser/accessibility/browser_accessibility_manager.h +++ b/content/browser/accessibility/browser_accessibility_manager.h @@ -180,7 +180,7 @@ class CONTENT_EXPORT BrowserAccessibilityManager { virtual void AddNodeToMap(BrowserAccessibility* node); - virtual void NotifyRootChanged() {} + virtual void OnRootChanged() {} private: // The following states keep track of whether or not the diff --git a/content/browser/accessibility/browser_accessibility_manager_android.cc b/content/browser/accessibility/browser_accessibility_manager_android.cc index c079825..ef816e5 100644 --- a/content/browser/accessibility/browser_accessibility_manager_android.cc +++ b/content/browser/accessibility/browser_accessibility_manager_android.cc @@ -521,7 +521,7 @@ jint BrowserAccessibilityManagerAndroid::FindElementType( return 0; } -void BrowserAccessibilityManagerAndroid::NotifyRootChanged() { +void BrowserAccessibilityManagerAndroid::OnRootChanged() { JNIEnv* env = AttachCurrentThread(); ScopedJavaLocalRef<jobject> obj = java_ref_.get(env); if (obj.is_null()) diff --git a/content/browser/accessibility/browser_accessibility_manager_android.h b/content/browser/accessibility/browser_accessibility_manager_android.h index e587eda..146567a 100644 --- a/content/browser/accessibility/browser_accessibility_manager_android.h +++ b/content/browser/accessibility/browser_accessibility_manager_android.h @@ -66,7 +66,7 @@ class CONTENT_EXPORT BrowserAccessibilityManagerAndroid jstring element_type, jboolean forwards); protected: - virtual void NotifyRootChanged() OVERRIDE; + virtual void OnRootChanged() OVERRIDE; virtual bool UseRootScrollOffsetsWhenComputingBounds() OVERRIDE; diff --git a/content/browser/accessibility/browser_accessibility_manager_win.cc b/content/browser/accessibility/browser_accessibility_manager_win.cc index e8055fa..ab896d2 100644 --- a/content/browser/accessibility/browser_accessibility_manager_win.cc +++ b/content/browser/accessibility/browser_accessibility_manager_win.cc @@ -222,6 +222,11 @@ void BrowserAccessibilityManagerWin::NotifyAccessibilityEvent( } } +void BrowserAccessibilityManagerWin::OnRootChanged() { + if (delegate_ && delegate_->HasFocus()) + NotifyAccessibilityEvent(ui::AX_EVENT_FOCUS, root_); +} + void BrowserAccessibilityManagerWin::TrackScrollingObject( BrowserAccessibilityWin* node) { if (tracked_scroll_object_) diff --git a/content/browser/accessibility/browser_accessibility_manager_win.h b/content/browser/accessibility/browser_accessibility_manager_win.h index 67508266..3fbbd3f 100644 --- a/content/browser/accessibility/browser_accessibility_manager_win.h +++ b/content/browser/accessibility/browser_accessibility_manager_win.h @@ -63,6 +63,10 @@ class CONTENT_EXPORT BrowserAccessibilityManagerWin // Called when |accessible_hwnd_| is deleted by its parent. void OnAccessibleHwndDeleted(); + protected: + // BrowserAccessibilityManager methods + virtual void OnRootChanged() OVERRIDE; + private: // The closest ancestor HWND. HWND parent_hwnd_; |