Chromium Code Reviews| Index: chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc |
| diff --git a/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc b/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc |
| index cbe7c699d3d325173048d73859f7d13a7566b8ac..a0539a1a6092ea4c7ef546ce49c944f682e081e6 100644 |
| --- a/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc |
| +++ b/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc |
| @@ -95,7 +95,7 @@ void ArcAccessibilityHelperBridge::OnInstanceReady() { |
| chromeos::switches::kEnableChromeVoxArcSupport)) { |
| instance->SetFilter(arc::mojom::AccessibilityFilterType::ALL); |
| if (!tree_source_) { |
| - tree_source_.reset(new AXTreeSourceArc()); |
| + tree_source_.reset(new AXTreeSourceArc(tree_id())); |
| focus_stealer_.reset(new FocusStealer(tree_source_->tree_id())); |
| exo::WMHelper::GetInstance()->AddActivationObserver(this); |
| } |
| @@ -159,4 +159,20 @@ void ArcAccessibilityHelperBridge::OnWindowActivated( |
| } |
| } |
| +void ArcAccessibilityHelperBridge::PerformAction(const ui::AXActionData& data) { |
| + arc::mojom::AccessibilityActionType mojo_action = |
| + arc::mojom::AccessibilityActionType::FOCUS; |
|
dmazzoni
2017/02/20 04:50:46
Is there a "none"?
Might be clearer to initialize
David Tseng
2017/02/21 19:09:05
Nope, no none. The intention wasn't to map everyth
|
| + switch (data.action) { |
| + case ui::AX_ACTION_DO_DEFAULT: |
| + mojo_action = arc::mojom::AccessibilityActionType::CLICK; |
| + break; |
| + default: |
| + return; |
| + } |
| + |
| + auto* instance = ARC_GET_INSTANCE_FOR_METHOD( |
| + arc_bridge_service()->accessibility_helper(), PerformAction); |
| + instance->PerformAction(data.target_node_id, mojo_action); |
| +} |
| + |
| } // namespace arc |