Index: chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h |
diff --git a/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h b/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h |
index 1cc84f927adfd69f38ac00b08f674971545c3018..b8c2fba951d20cb9b720d41f6b911561b3499f7e 100644 |
--- a/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h |
+++ b/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h |
@@ -7,6 +7,8 @@ |
#include <memory> |
+#include "chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.h" |
+#include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h" |
#include "components/arc/arc_service.h" |
#include "components/arc/common/accessibility_helper.mojom.h" |
#include "components/arc/instance_holder.h" |
@@ -33,7 +35,8 @@ class ArcAccessibilityHelperBridge |
public mojom::AccessibilityHelperHost, |
public InstanceHolder<mojom::AccessibilityHelperInstance>::Observer, |
public exo::WMHelper::ActivationObserver, |
- public ui::AXHostDelegate { |
+ public AXTreeSourceArc::Delegate, |
+ public ArcAppListPrefs::Observer { |
public: |
explicit ArcAccessibilityHelperBridge(ArcBridgeService* bridge_service); |
~ArcAccessibilityHelperBridge() override; |
@@ -48,18 +51,27 @@ class ArcAccessibilityHelperBridge |
void OnAccessibilityEvent( |
mojom::AccessibilityEventDataPtr event_data) override; |
+ // AXTreeSourceArc::Delegate overrides. |
+ void OnAction(const ui::AXActionData& data) const override; |
+ |
private: |
// exo::WMHelper::ActivationObserver overrides. |
void OnWindowActivated(aura::Window* gained_active, |
aura::Window* lost_active) override; |
- // AXHostDelegate overrides. |
- void PerformAction(const ui::AXActionData& data) override; |
+ // ArcAppListPrefs::Observer overrides. |
+ void OnTaskCreated(int task_id, |
+ const std::string& package_name, |
+ const std::string& activity, |
+ const std::string& intent) override; |
+ void OnTaskDestroyed(int task_id) override; |
+ void OnTaskSetActive(int32_t task_id) override; |
mojo::Binding<mojom::AccessibilityHelperHost> binding_; |
- std::unique_ptr<AXTreeSourceArc> tree_source_; |
- std::unique_ptr<views::View> focus_stealer_; |
+ std::map<std::string, std::unique_ptr<AXTreeSourceArc>> package_name_to_tree_; |
+ std::map<std::string, std::set<int32_t>> package_name_to_task_ids_; |
+ int32_t current_task_id_; |
DISALLOW_COPY_AND_ASSIGN(ArcAccessibilityHelperBridge); |
}; |