| 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..ebe0fd943bdd8cbadd53e08a5c781a3ebe6a06d6 100644
|
| --- a/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h
|
| +++ b/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.h
|
| @@ -5,8 +5,13 @@
|
| #ifndef CHROME_BROWSER_CHROMEOS_ARC_ACCESSIBILITY_ARC_ACCESSIBILITY_HELPER_BRIDGE_H_
|
| #define CHROME_BROWSER_CHROMEOS_ARC_ACCESSIBILITY_ARC_ACCESSIBILITY_HELPER_BRIDGE_H_
|
|
|
| +#include <map>
|
| #include <memory>
|
| +#include <set>
|
| +#include <string>
|
|
|
| +#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"
|
| @@ -14,12 +19,6 @@
|
| #include "mojo/public/cpp/bindings/binding.h"
|
| #include "ui/accessibility/ax_host_delegate.h"
|
|
|
| -namespace views {
|
| -
|
| -class View;
|
| -
|
| -} // namespace views
|
| -
|
| namespace arc {
|
|
|
| class ArcBridgeService;
|
| @@ -33,7 +32,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 +48,36 @@ class ArcAccessibilityHelperBridge
|
| void OnAccessibilityEvent(
|
| mojom::AccessibilityEventDataPtr event_data) override;
|
|
|
| + // AXTreeSourceArc::Delegate overrides.
|
| + void OnAction(const ui::AXActionData& data) const 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(int32_t task_id) override;
|
| + void OnTaskSetActive(int32_t task_id) override;
|
| +
|
| + const std::map<std::string, std::unique_ptr<AXTreeSourceArc>>&
|
| + package_name_to_tree_for_test() {
|
| + return package_name_to_tree_;
|
| + }
|
| + const std::map<std::string, std::set<int32_t>>&
|
| + package_name_to_task_ids_for_test() {
|
| + return package_name_to_task_ids_;
|
| + }
|
| +
|
| 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;
|
| -
|
| 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);
|
| };
|
|
|