OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.h" | 5 #include "chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "chrome/browser/extensions/api/automation_internal/automation_event_rou
ter.h" | 9 #include "chrome/browser/extensions/api/automation_internal/automation_event_rou
ter.h" |
10 #include "chrome/browser/ui/aura/accessibility/automation_manager_aura.h" | 10 #include "chrome/browser/ui/aura/accessibility/automation_manager_aura.h" |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
390 out_data->AddStringAttribute(ui::AX_ATTR_VALUE, text); | 390 out_data->AddStringAttribute(ui::AX_ATTR_VALUE, text); |
391 | 391 |
392 // Integer properties. | 392 // Integer properties. |
393 int32_t val; | 393 int32_t val; |
394 if (GetIntProperty(node, AXIntProperty::TEXT_SELECTION_START, &val) && | 394 if (GetIntProperty(node, AXIntProperty::TEXT_SELECTION_START, &val) && |
395 val >= 0) | 395 val >= 0) |
396 out_data->AddIntAttribute(ui::AX_ATTR_TEXT_SEL_START, val); | 396 out_data->AddIntAttribute(ui::AX_ATTR_TEXT_SEL_START, val); |
397 | 397 |
398 if (GetIntProperty(node, AXIntProperty::TEXT_SELECTION_END, &val) && val >= 0) | 398 if (GetIntProperty(node, AXIntProperty::TEXT_SELECTION_END, &val) && val >= 0) |
399 out_data->AddIntAttribute(ui::AX_ATTR_TEXT_SEL_END, val); | 399 out_data->AddIntAttribute(ui::AX_ATTR_TEXT_SEL_END, val); |
| 400 |
| 401 // TODO(yawano): Remove this. This is test code for WIP code. |
| 402 std::vector<int32_t> custom_action_ids; |
| 403 custom_action_ids.push_back(1); |
| 404 custom_action_ids.push_back(2); |
| 405 out_data->AddIntListAttribute(ui::AX_ATTR_CUSTOM_ACTION_IDS, |
| 406 custom_action_ids); |
| 407 |
| 408 std::vector<std::string> custom_action_descriptions; |
| 409 custom_action_descriptions.push_back(std::string("Test action 1")); |
| 410 custom_action_descriptions.push_back(std::string("Test action 2")); |
| 411 out_data->AddStringListAttribute(ui::AX_ATTR_CUSTOM_ACTION_DESCRIPTIONS, |
| 412 custom_action_descriptions); |
400 } | 413 } |
401 | 414 |
402 void AXTreeSourceArc::PerformAction(const ui::AXActionData& data) { | 415 void AXTreeSourceArc::PerformAction(const ui::AXActionData& data) { |
403 delegate_->OnAction(data); | 416 delegate_->OnAction(data); |
404 } | 417 } |
405 | 418 |
406 void AXTreeSourceArc::Reset() { | 419 void AXTreeSourceArc::Reset() { |
407 tree_map_.clear(); | 420 tree_map_.clear(); |
408 parent_map_.clear(); | 421 parent_map_.clear(); |
409 current_tree_serializer_.reset(new AXTreeArcSerializer(this)); | 422 current_tree_serializer_.reset(new AXTreeArcSerializer(this)); |
410 root_id_ = -1; | 423 root_id_ = -1; |
411 focused_node_id_ = -1; | 424 focused_node_id_ = -1; |
412 extensions::AutomationEventRouter* router = | 425 extensions::AutomationEventRouter* router = |
413 extensions::AutomationEventRouter::GetInstance(); | 426 extensions::AutomationEventRouter::GetInstance(); |
414 if (!router) | 427 if (!router) |
415 return; | 428 return; |
416 | 429 |
417 router->DispatchTreeDestroyedEvent(tree_id(), nullptr); | 430 router->DispatchTreeDestroyedEvent(tree_id(), nullptr); |
418 } | 431 } |
419 | 432 |
420 } // namespace arc | 433 } // namespace arc |
OLD | NEW |