Chromium Code Reviews| Index: chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_service.h |
| diff --git a/chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_service.h b/chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_service.h |
| index 384505b90e5f35ba83a0a2f37183cfe2fa200073..cc90881e29e9f4141320fb14941a4ca37f02af98 100644 |
| --- a/chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_service.h |
| +++ b/chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_service.h |
| @@ -31,11 +31,23 @@ class ArcKioskAppService |
| : public KeyedService, |
| public ArcAppListPrefs::Observer, |
| public ArcKioskAppManager::ArcKioskAppManagerObserver, |
| - public arc::ArcKioskBridge::Delegate { |
| + public arc::ArcKioskBridge::Delegate, |
| + public ArcKioskAppLauncher::Delegate { |
| public: |
| + class Delegate { |
| + public: |
| + virtual void OnAppStarted() = 0; |
| + virtual void OnAppWindowLaunched() = 0; |
| + |
| + protected: |
| + virtual ~Delegate() {} |
|
Luis Héctor Chávez
2017/01/24 18:40:24
nit: = default
Sergey Poromov
2017/01/25 14:29:21
Done.
|
| + }; |
| + |
| static ArcKioskAppService* Create(Profile* profile); |
| static ArcKioskAppService* Get(content::BrowserContext* context); |
| + void SetDelegate(Delegate* delegate); |
| + |
| // KeyedService overrides |
| void Shutdown() override; |
| @@ -57,6 +69,9 @@ class ArcKioskAppService |
| void OnMaintenanceSessionCreated() override; |
| void OnMaintenanceSessionFinished() override; |
| + // ArcKioskAppLauncher::Delegate overrides |
| + void OnAppWindowLaunched() override; |
| + |
| private: |
| explicit ArcKioskAppService(Profile* profile); |
| ~ArcKioskAppService() override; |
| @@ -74,6 +89,7 @@ class ArcKioskAppService |
| std::unique_ptr<PrefChangeRegistrar> pref_change_registrar_; |
| // Keeps track whether the app is already launched |
| std::unique_ptr<ArcKioskAppLauncher> app_launcher_; |
| + Delegate* delegate_ = nullptr; |
|
Luis Héctor Chávez
2017/01/24 18:40:24
Please note who owns this and its lifetime.
Sergey Poromov
2017/01/25 14:29:21
Done.
|
| DISALLOW_COPY_AND_ASSIGN(ArcKioskAppService); |
| }; |