OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/accessibility/browser_accessibility_manager.h" | 5 #include "content/browser/accessibility/browser_accessibility_manager.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "build/build_config.h" | 10 #include "build/build_config.h" |
(...skipping 597 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
608 if (ax_tree_id_changed || root_changed) { | 608 if (ax_tree_id_changed || root_changed) { |
609 BrowserAccessibility* parent = GetParentNodeFromParentTree(); | 609 BrowserAccessibility* parent = GetParentNodeFromParentTree(); |
610 if (parent) { | 610 if (parent) { |
611 parent->OnDataChanged(); | 611 parent->OnDataChanged(); |
612 parent->manager()->NotifyAccessibilityEvent( | 612 parent->manager()->NotifyAccessibilityEvent( |
613 ui::AX_EVENT_CHILDREN_CHANGED, parent); | 613 ui::AX_EVENT_CHILDREN_CHANGED, parent); |
614 } | 614 } |
615 } | 615 } |
616 } | 616 } |
617 | 617 |
618 BrowserAccessibilityDelegate* | 618 BrowserAccessibilityManager* BrowserAccessibilityManager::GetRootManager() { |
619 BrowserAccessibilityManager::GetDelegateFromRootManager() { | |
620 if (!GetRoot()) | 619 if (!GetRoot()) |
David Tseng
2016/01/07 00:02:29
When does this happen?
dmazzoni
2016/01/07 19:19:08
In the middle of a tree update when we call someth
| |
621 return nullptr; | 620 return nullptr; |
622 int parent_tree_id = GetTreeData().parent_tree_id; | 621 int parent_tree_id = GetTreeData().parent_tree_id; |
623 BrowserAccessibilityManager* parent_manager = | 622 BrowserAccessibilityManager* parent_manager = |
624 BrowserAccessibilityManager::FromID(parent_tree_id); | 623 BrowserAccessibilityManager::FromID(parent_tree_id); |
625 if (parent_manager) | 624 if (parent_manager) |
626 return parent_manager->GetDelegateFromRootManager(); | 625 return parent_manager->GetRootManager(); |
627 return delegate(); | 626 return this; |
627 } | |
628 | |
629 BrowserAccessibilityDelegate* | |
630 BrowserAccessibilityManager::GetDelegateFromRootManager() { | |
631 BrowserAccessibilityManager* root_manager = GetRootManager(); | |
632 if (root_manager) | |
633 return root_manager->delegate(); | |
634 return nullptr; | |
628 } | 635 } |
629 | 636 |
630 ui::AXTreeUpdate | 637 ui::AXTreeUpdate |
631 BrowserAccessibilityManager::SnapshotAXTreeForTesting() { | 638 BrowserAccessibilityManager::SnapshotAXTreeForTesting() { |
632 scoped_ptr<ui::AXTreeSource<const ui::AXNode*, | 639 scoped_ptr<ui::AXTreeSource<const ui::AXNode*, |
633 ui::AXNodeData, | 640 ui::AXNodeData, |
634 ui::AXTreeData> > tree_source( | 641 ui::AXTreeData> > tree_source( |
635 tree_->CreateTreeSource()); | 642 tree_->CreateTreeSource()); |
636 ui::AXTreeSerializer<const ui::AXNode*, | 643 ui::AXTreeSerializer<const ui::AXNode*, |
637 ui::AXNodeData, | 644 ui::AXNodeData, |
638 ui::AXTreeData> serializer(tree_source.get()); | 645 ui::AXTreeData> serializer(tree_source.get()); |
639 ui::AXTreeUpdate update; | 646 ui::AXTreeUpdate update; |
640 serializer.SerializeChanges(tree_->root(), &update); | 647 serializer.SerializeChanges(tree_->root(), &update); |
641 return update; | 648 return update; |
642 } | 649 } |
643 | 650 |
644 } // namespace content | 651 } // namespace content |
OLD | NEW |