diff options
author | dmazzoni <dmazzoni@chromium.org> | 2015-06-02 16:31:56 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-06-02 23:32:17 +0000 |
commit | 09e75914329e772deadbe7dd99ca8d34bed72b3c (patch) | |
tree | c787e9eeb35ed1526ca168c3d66421d1f8d7b3b0 /content/browser | |
parent | 95dd28fc6111f2e59c21283badd9de03c2a8d0e1 (diff) | |
download | chromium_src-09e75914329e772deadbe7dd99ca8d34bed72b3c.zip chromium_src-09e75914329e772deadbe7dd99ca8d34bed72b3c.tar.gz chromium_src-09e75914329e772deadbe7dd99ca8d34bed72b3c.tar.bz2 |
Pass the affected tree in AXTreeDelegate calls.
This will be used in a forthcoming change that uses AXTree in the
automation extension process.
BUG=495323
Review URL: https://codereview.chromium.org/1162223008
Cr-Commit-Position: refs/heads/master@{#332491}
Diffstat (limited to 'content/browser')
8 files changed, 57 insertions, 42 deletions
diff --git a/content/browser/accessibility/browser_accessibility_manager.cc b/content/browser/accessibility/browser_accessibility_manager.cc index 9fe18ca..742e229 100644 --- a/content/browser/accessibility/browser_accessibility_manager.cc +++ b/content/browser/accessibility/browser_accessibility_manager.cc @@ -415,7 +415,8 @@ BrowserAccessibility* BrowserAccessibilityManager::PreviousInTreeOrder( return node->GetParent(); } -void BrowserAccessibilityManager::OnNodeWillBeDeleted(ui::AXNode* node) { +void BrowserAccessibilityManager::OnNodeWillBeDeleted(ui::AXTree* tree, + ui::AXNode* node) { if (node == focus_ && tree_) { if (node != tree_->root()) SetFocus(tree_->root(), false); @@ -428,24 +429,28 @@ void BrowserAccessibilityManager::OnNodeWillBeDeleted(ui::AXNode* node) { id_wrapper_map_.erase(node->id()); } -void BrowserAccessibilityManager::OnSubtreeWillBeDeleted(ui::AXNode* node) { +void BrowserAccessibilityManager::OnSubtreeWillBeDeleted(ui::AXTree* tree, + ui::AXNode* node) { BrowserAccessibility* obj = GetFromAXNode(node); if (obj) obj->OnSubtreeWillBeDeleted(); } -void BrowserAccessibilityManager::OnNodeCreated(ui::AXNode* node) { +void BrowserAccessibilityManager::OnNodeCreated(ui::AXTree* tree, + ui::AXNode* node) { BrowserAccessibility* wrapper = factory_->Create(); wrapper->Init(this, node); id_wrapper_map_[node->id()] = wrapper; wrapper->OnDataChanged(); } -void BrowserAccessibilityManager::OnNodeChanged(ui::AXNode* node) { +void BrowserAccessibilityManager::OnNodeChanged(ui::AXTree* tree, + ui::AXNode* node) { GetFromAXNode(node)->OnDataChanged(); } void BrowserAccessibilityManager::OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) { } diff --git a/content/browser/accessibility/browser_accessibility_manager.h b/content/browser/accessibility/browser_accessibility_manager.h index f60bd02..b7a74d9 100644 --- a/content/browser/accessibility/browser_accessibility_manager.h +++ b/content/browser/accessibility/browser_accessibility_manager.h @@ -240,11 +240,12 @@ class CONTENT_EXPORT BrowserAccessibilityManager : public ui::AXTreeDelegate { BrowserAccessibility* PreviousInTreeOrder(BrowserAccessibility* node); // AXTreeDelegate implementation. - void OnNodeWillBeDeleted(ui::AXNode* node) override; - void OnSubtreeWillBeDeleted(ui::AXNode* node) override; - void OnNodeCreated(ui::AXNode* node) override; - void OnNodeChanged(ui::AXNode* node) override; + void OnNodeWillBeDeleted(ui::AXTree* tree, ui::AXNode* node) override; + void OnSubtreeWillBeDeleted(ui::AXTree* tree, ui::AXNode* node) override; + void OnNodeCreated(ui::AXTree* tree, ui::AXNode* node) override; + void OnNodeChanged(ui::AXTree* tree, ui::AXNode* node) override; void OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) override; diff --git a/content/browser/accessibility/browser_accessibility_manager_android.cc b/content/browser/accessibility/browser_accessibility_manager_android.cc index d140ec0..b785dd9 100644 --- a/content/browser/accessibility/browser_accessibility_manager_android.cc +++ b/content/browser/accessibility/browser_accessibility_manager_android.cc @@ -729,6 +729,7 @@ void BrowserAccessibilityManagerAndroid::SetAccessibilityFocus( } void BrowserAccessibilityManagerAndroid::OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) { if (root_changed) { diff --git a/content/browser/accessibility/browser_accessibility_manager_android.h b/content/browser/accessibility/browser_accessibility_manager_android.h index 6ab9ae8..38dae1e 100644 --- a/content/browser/accessibility/browser_accessibility_manager_android.h +++ b/content/browser/accessibility/browser_accessibility_manager_android.h @@ -124,6 +124,7 @@ class CONTENT_EXPORT BrowserAccessibilityManagerAndroid protected: // AXTreeDelegate overrides. void OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) override; diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.h b/content/browser/accessibility/browser_accessibility_manager_mac.h index 02115e8..0c91252 100644 --- a/content/browser/accessibility/browser_accessibility_manager_mac.h +++ b/content/browser/accessibility/browser_accessibility_manager_mac.h @@ -32,6 +32,7 @@ class CONTENT_EXPORT BrowserAccessibilityManagerMac private: void OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) override; diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.mm b/content/browser/accessibility/browser_accessibility_manager_mac.mm index 8f6b218..d4c1485d 100644 --- a/content/browser/accessibility/browser_accessibility_manager_mac.mm +++ b/content/browser/accessibility/browser_accessibility_manager_mac.mm @@ -161,8 +161,11 @@ void BrowserAccessibilityManagerMac::NotifyAccessibilityEvent( } void BrowserAccessibilityManagerMac::OnAtomicUpdateFinished( - bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) { - BrowserAccessibilityManager::OnAtomicUpdateFinished(root_changed, changes); + ui::AXTree* tree, + bool root_changed, + const std::vector<ui::AXTreeDelegate::Change>& changes) { + BrowserAccessibilityManager::OnAtomicUpdateFinished( + tree, root_changed, changes); bool created_live_region = false; for (size_t i = 0; i < changes.size(); ++i) { diff --git a/content/browser/accessibility/browser_accessibility_manager_win.cc b/content/browser/accessibility/browser_accessibility_manager_win.cc index 24a30896..bf70c57 100644 --- a/content/browser/accessibility/browser_accessibility_manager_win.cc +++ b/content/browser/accessibility/browser_accessibility_manager_win.cc @@ -135,32 +135,6 @@ void BrowserAccessibilityManagerWin::MaybeCallNotifyWinEvent( ::NotifyWinEvent(event, hwnd, OBJID_CLIENT, child_id); } -void BrowserAccessibilityManagerWin::OnNodeCreated(ui::AXNode* node) { - BrowserAccessibilityManager::OnNodeCreated(node); - BrowserAccessibility* obj = GetFromAXNode(node); - if (!obj) - return; - if (!obj->IsNative()) - return; - LONG unique_id_win = obj->ToBrowserAccessibilityWin()->unique_id_win(); - unique_id_to_ax_id_map_[unique_id_win] = obj->GetId(); -} - -void BrowserAccessibilityManagerWin::OnNodeWillBeDeleted(ui::AXNode* node) { - BrowserAccessibilityManager::OnNodeWillBeDeleted(node); - BrowserAccessibility* obj = GetFromAXNode(node); - if (!obj) - return; - if (!obj->IsNative()) - return; - unique_id_to_ax_id_map_.erase( - obj->ToBrowserAccessibilityWin()->unique_id_win()); - if (obj == tracked_scroll_object_) { - tracked_scroll_object_->Release(); - tracked_scroll_object_ = NULL; - } -} - void BrowserAccessibilityManagerWin::OnWindowFocused() { // This is called either when this web frame gets focused, or when // the root of the accessibility tree changes. In both cases, we need @@ -300,10 +274,40 @@ void BrowserAccessibilityManagerWin::NotifyAccessibilityEvent( } } +void BrowserAccessibilityManagerWin::OnNodeCreated(ui::AXTree* tree, + ui::AXNode* node) { + BrowserAccessibilityManager::OnNodeCreated(tree, node); + BrowserAccessibility* obj = GetFromAXNode(node); + if (!obj) + return; + if (!obj->IsNative()) + return; + LONG unique_id_win = obj->ToBrowserAccessibilityWin()->unique_id_win(); + unique_id_to_ax_id_map_[unique_id_win] = obj->GetId(); +} + +void BrowserAccessibilityManagerWin::OnNodeWillBeDeleted(ui::AXTree* tree, + ui::AXNode* node) { + BrowserAccessibilityManager::OnNodeWillBeDeleted(tree, node); + BrowserAccessibility* obj = GetFromAXNode(node); + if (!obj) + return; + if (!obj->IsNative()) + return; + unique_id_to_ax_id_map_.erase( + obj->ToBrowserAccessibilityWin()->unique_id_win()); + if (obj == tracked_scroll_object_) { + tracked_scroll_object_->Release(); + tracked_scroll_object_ = NULL; + } +} + void BrowserAccessibilityManagerWin::OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) { - BrowserAccessibilityManager::OnAtomicUpdateFinished(root_changed, changes); + BrowserAccessibilityManager::OnAtomicUpdateFinished( + tree, root_changed, changes); if (root_changed) { // In order to make screen readers aware of the new accessibility root, diff --git a/content/browser/accessibility/browser_accessibility_manager_win.h b/content/browser/accessibility/browser_accessibility_manager_win.h index c33f592..37f87dc 100644 --- a/content/browser/accessibility/browser_accessibility_manager_win.h +++ b/content/browser/accessibility/browser_accessibility_manager_win.h @@ -36,10 +36,6 @@ class CONTENT_EXPORT BrowserAccessibilityManagerWin // Calls NotifyWinEvent if the parent window's IAccessible pointer is known. void MaybeCallNotifyWinEvent(DWORD event, BrowserAccessibility* node); - // AXTree methods - void OnNodeWillBeDeleted(ui::AXNode* node) override; - void OnNodeCreated(ui::AXNode* node) override; - // BrowserAccessibilityManager methods void OnWindowFocused() override; void UserIsReloading() override; @@ -59,8 +55,11 @@ class CONTENT_EXPORT BrowserAccessibilityManagerWin void OnAccessibleHwndDeleted(); protected: - // BrowserAccessibilityManager methods + // AXTree methods. + void OnNodeWillBeDeleted(ui::AXTree* tree, ui::AXNode* node) override; + void OnNodeCreated(ui::AXTree* tree, ui::AXNode* node) override; void OnAtomicUpdateFinished( + ui::AXTree* tree, bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) override; |