Chromium Code Reviews| Index: chrome/browser/ui/aura/accessibility/automation_manager_aura.cc |
| diff --git a/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc b/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc |
| index 44dd07306fbd9b6dacebedc1268950472ae68a18..ad103624804e3bb250df934955a1ec3964666d4a 100644 |
| --- a/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc |
| +++ b/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc |
| @@ -16,6 +16,8 @@ |
| #include "chrome/common/extensions/chrome_extension_messages.h" |
| #include "content/public/browser/ax_event_notification_details.h" |
| #include "content/public/browser/browser_context.h" |
| +#include "ui/accessibility/ax_action_data.h" |
| +#include "ui/accessibility/ax_enums.h" |
| #include "ui/aura/window.h" |
| #include "ui/views/accessibility/ax_aura_obj_wrapper.h" |
| #include "ui/views/view.h" |
| @@ -81,36 +83,43 @@ void AutomationManagerAura::HandleAlert(content::BrowserContext* context, |
| SendEvent(context, obj, ui::AX_EVENT_ALERT); |
| } |
| -void AutomationManagerAura::DoDefault(int32_t id) { |
| +void AutomationManagerAura::PerformAction( |
| + ui::AXAction action, |
| + const ui::AXActionData& data) { |
| CHECK(enabled_); |
| - current_tree_->DoDefault(id); |
| -} |
| - |
| -void AutomationManagerAura::Focus(int32_t id) { |
| - CHECK(enabled_); |
| - current_tree_->Focus(id); |
| -} |
| - |
| -void AutomationManagerAura::MakeVisible(int32_t id) { |
| - CHECK(enabled_); |
| - current_tree_->MakeVisible(id); |
| -} |
| -void AutomationManagerAura::SetSelection(int32_t anchor_id, |
| - int32_t anchor_offset, |
| - int32_t focus_id, |
| - int32_t focus_offset) { |
| - CHECK(enabled_); |
| - if (anchor_id != focus_id) { |
| - NOTREACHED(); |
| - return; |
| + switch (action) { |
| + case ui::AX_ACTION_DO_DEFAULT: |
| + current_tree_->DoDefault(data.target_node_id); |
| + break; |
| + case ui::AX_ACTION_SET_FOCUS: |
| + current_tree_->Focus(data.target_node_id); |
| + break; |
| + case ui::AX_ACTION_SCROLL_TO_MAKE_VISIBLE: |
| + current_tree_->MakeVisible(data.target_node_id); |
| + break; |
| + case ui::AX_ACTION_SET_SELECTION: |
| + if (data.anchor_node_id != data.focus_node_id) { |
| + NOTREACHED(); |
| + return; |
| + } |
| + current_tree_->SetSelection( |
| + data.anchor_node_id, data.anchor_offset, data.focus_offset); |
| + break; |
| + case ui::AX_ACTION_SHOW_CONTEXT_MENU: |
| + current_tree_->ShowContextMenu(data.target_node_id); |
| + break; |
| + case ui::AX_ACTION_HIT_TEST: |
| + case ui::AX_ACTION_SCROLL_TO_POINT: |
| + case ui::AX_ACTION_SET_ACCESSIBILITY_FOCUS: |
| + case ui::AX_ACTION_SET_SCROLL_OFFSET: |
| + case ui::AX_ACTION_SET_VALUE: |
| + // Not implemented yet. |
|
David Tseng
2016/10/13 22:15:14
NOTREACHED
dmazzoni
2016/10/14 20:49:39
Done
|
| + break; |
| + case ui::AX_ACTION_NONE: |
| + NOTREACHED(); |
| + break; |
|
David Tseng
2016/10/13 22:15:14
default, to get a compile time warning?
dmazzoni
2016/10/14 20:49:39
I deliberately left out default so that if we
add
|
| } |
| - current_tree_->SetSelection(anchor_id, anchor_offset, focus_offset); |
| -} |
| - |
| -void AutomationManagerAura::ShowContextMenu(int32_t id) { |
| - CHECK(enabled_); |
| - current_tree_->ShowContextMenu(id); |
| } |
| void AutomationManagerAura::OnChildWindowRemoved( |