| Index: components/arc/arc_service_manager.h
|
| diff --git a/components/arc/arc_service_manager.h b/components/arc/arc_service_manager.h
|
| index 383ed4722d12e6018639c3ab9be72cdd729076d0..17ec020e7a5d931a5ed1f93921e8ab6092d2b3f5 100644
|
| --- a/components/arc/arc_service_manager.h
|
| +++ b/components/arc/arc_service_manager.h
|
| @@ -6,6 +6,7 @@
|
| #define COMPONENTS_ARC_ARC_SERVICE_MANAGER_H_
|
|
|
| #include <memory>
|
| +#include <string>
|
| #include <vector>
|
|
|
| #include "base/macros.h"
|
| @@ -13,12 +14,14 @@
|
| #include "base/task_runner.h"
|
| #include "base/threading/thread_checker.h"
|
| #include "components/arc/intent_helper/activity_icon_loader.h"
|
| +#include "components/prefs/pref_member.h"
|
| #include "components/signin/core/account_id/account_id.h"
|
|
|
| namespace arc {
|
|
|
| class ArcBridgeService;
|
| class ArcService;
|
| +class ArcUserDataService;
|
|
|
| // Manages creation and destruction of services that communicate with the ARC
|
| // instance via the ArcBridgeService.
|
| @@ -40,7 +43,12 @@ class ArcServiceManager {
|
| static ArcServiceManager* Get();
|
|
|
| // Called when the main profile is initialized after user logs in.
|
| - void OnPrimaryUserProfilePrepared(const AccountId& account_id);
|
| + void OnPrimaryUserProfilePrepared(
|
| + const AccountId& account_id,
|
| + std::unique_ptr<BooleanPrefMember> arc_enabled_pref);
|
| +
|
| + // Has the user enabled ARC in their preferences?
|
| + bool IsArcEnabled() const;
|
|
|
| // Called once the windowing system (ash) has been started.
|
| void OnAshStarted();
|
| @@ -67,11 +75,15 @@ class ArcServiceManager {
|
| std::unique_ptr<ArcBridgeService> arc_bridge_service_;
|
| std::vector<std::unique_ptr<ArcService>> services_;
|
| scoped_refptr<ActivityIconLoader> icon_loader_;
|
| + std::unique_ptr<ArcUserDataService> arc_user_data_service_;
|
|
|
| // True once the window manager service got added, barring adding any more
|
| // of those since OnAshStarted() might be called multiple times.
|
| bool on_ash_started_called_ = false;
|
|
|
| + // User preference indicating whether or not ARC has been enabled.
|
| + std::unique_ptr<BooleanPrefMember> arc_enabled_pref_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ArcServiceManager);
|
| };
|
|
|
|
|