| Index: content/browser/accessibility/browser_accessibility_manager.cc
|
| diff --git a/content/browser/accessibility/browser_accessibility_manager.cc b/content/browser/accessibility/browser_accessibility_manager.cc
|
| index 3c99ffca4f86774c733bddbc2aec98cc9b5ba0cc..cc8f660a7d79794ec52c620a5c5cbdf1e39b5126 100644
|
| --- a/content/browser/accessibility/browser_accessibility_manager.cc
|
| +++ b/content/browser/accessibility/browser_accessibility_manager.cc
|
| @@ -399,6 +399,9 @@ void BrowserAccessibilityManager::OnNodeWillBeDeleted(ui::AXNode* node) {
|
| }
|
|
|
| void BrowserAccessibilityManager::OnSubtreeWillBeDeleted(ui::AXNode* node) {
|
| + BrowserAccessibility* obj = GetFromAXNode(node);
|
| + if (obj)
|
| + obj->OnSubtreeWillBeDeleted();
|
| }
|
|
|
| void BrowserAccessibilityManager::OnNodeCreated(ui::AXNode* node) {
|
| @@ -413,9 +416,17 @@ void BrowserAccessibilityManager::OnNodeChanged(ui::AXNode* node) {
|
| }
|
|
|
| void BrowserAccessibilityManager::OnAtomicUpdateFinished(
|
| - bool root_changed, const std::vector<ui::AXTreeDelegate::Change>& changes) {
|
| - for (size_t i = 0; i < changes.size(); ++i)
|
| - GetFromAXNode(changes[i].node)->OnUpdateFinished();
|
| + bool root_changed,
|
| + const std::vector<ui::AXTreeDelegate::Change>& changes) {
|
| + for (size_t i = 0; i < changes.size(); ++i) {
|
| + BrowserAccessibility* obj = GetFromAXNode(changes[i].node);
|
| + if (!obj)
|
| + continue;
|
| +
|
| + obj->OnUpdateFinished();
|
| + if (changes[i].type == AXTreeDelegate::SUBTREE_CREATED)
|
| + GetFromAXNode(changes[i].node)->OnSubtreeCreationFinished();
|
| + }
|
| }
|
|
|
| ui::AXTreeUpdate BrowserAccessibilityManager::SnapshotAXTreeForTesting() {
|
|
|