| Index: chrome/browser/chromeos/login/existing_user_controller.h
|
| diff --git a/chrome/browser/chromeos/login/existing_user_controller.h b/chrome/browser/chromeos/login/existing_user_controller.h
|
| index e1bc66c7a5ec50e8ad8816de9d157a43b8b72a43..9eda834821f8b4793d725cd5cecaa0308c838c55 100644
|
| --- a/chrome/browser/chromeos/login/existing_user_controller.h
|
| +++ b/chrome/browser/chromeos/login/existing_user_controller.h
|
| @@ -18,6 +18,7 @@
|
| #include "base/strings/string16.h"
|
| #include "base/time/time.h"
|
| #include "base/timer/timer.h"
|
| +#include "chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_manager.h"
|
| #include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h"
|
| #include "chrome/browser/chromeos/login/session/user_session_manager.h"
|
| #include "chrome/browser/chromeos/login/signin/token_handle_util.h"
|
| @@ -55,10 +56,12 @@ class NetworkStateHelper;
|
| // all login UI implementation.
|
| // ExistingUserController maintains it's own life cycle and deletes itself when
|
| // the user logs in (or chooses to see other settings).
|
| -class ExistingUserController : public LoginDisplay::Delegate,
|
| - public content::NotificationObserver,
|
| - public LoginPerformer::Delegate,
|
| - public UserSessionManagerDelegate {
|
| +class ExistingUserController
|
| + : public LoginDisplay::Delegate,
|
| + public content::NotificationObserver,
|
| + public LoginPerformer::Delegate,
|
| + public UserSessionManagerDelegate,
|
| + public ArcKioskAppManager::ArcKioskAppManagerObserver {
|
| public:
|
| // All UI initialization is deferred till Init() call.
|
| explicit ExistingUserController(LoginDisplayHost* host);
|
| @@ -72,11 +75,11 @@ class ExistingUserController : public LoginDisplay::Delegate,
|
| // Creates and shows login UI for known users.
|
| void Init(const user_manager::UserList& users);
|
|
|
| - // Start the public session auto-login timer.
|
| - void StartPublicSessionAutoLoginTimer();
|
| + // Start the auto-login timer.
|
| + void StartAutoLoginTimer();
|
|
|
| - // Stop the public session auto-login timer when a login attempt begins.
|
| - void StopPublicSessionAutoLoginTimer();
|
| + // Stop the auto-login timer when a login attempt begins.
|
| + void StopAutoLoginTimer();
|
|
|
| // LoginDisplay::Delegate: implementation
|
| void CancelPasswordChangedFlow() override;
|
| @@ -103,6 +106,9 @@ class ExistingUserController : public LoginDisplay::Delegate,
|
| const content::NotificationSource& source,
|
| const content::NotificationDetails& details) override;
|
|
|
| + // ArcKioskAppManager::ArcKioskAppManagerObserver overrides.
|
| + void OnArcKioskAppsChanged() override;
|
| +
|
| // Set a delegate that we will pass AuthStatusConsumer events to.
|
| // Used for testing.
|
| void set_login_status_consumer(AuthStatusConsumer* consumer) {
|
| @@ -138,12 +144,14 @@ class ExistingUserController : public LoginDisplay::Delegate,
|
| void LoginAsPublicSession(const UserContext& user_context);
|
| void LoginAsKioskApp(const std::string& app_id, bool diagnostic_mode);
|
| void LoginAsArcKioskApp(const AccountId& account_id);
|
| -
|
| - // Retrieve public session auto-login policy and update the timer.
|
| - void ConfigurePublicSessionAutoLogin();
|
| + // Retrieve public session and ARC kiosk auto-login policy and update the
|
| + // timer.
|
| + void ConfigureAutoLogin();
|
|
|
| // Trigger public session auto-login.
|
| void OnPublicSessionAutoLoginTimerFire();
|
| + // Trigger ARC kiosk auto-login.
|
| + void OnArcKioskAutoLoginTimerFire();
|
|
|
| // LoginPerformer::Delegate implementation:
|
| void OnAuthFailure(const AuthFailure& error) override;
|
| @@ -255,12 +263,15 @@ class ExistingUserController : public LoginDisplay::Delegate,
|
| // Public session auto-login timer.
|
| std::unique_ptr<base::OneShotTimer> auto_login_timer_;
|
|
|
| - // Public session auto-login timeout, in milliseconds.
|
| - int public_session_auto_login_delay_;
|
| + // Auto-login timeout, in milliseconds.
|
| + int auto_login_delay_;
|
|
|
| // AccountId for public session auto-login.
|
| AccountId public_session_auto_login_account_id_ = EmptyAccountId();
|
|
|
| + // AccountId for ARC kiosk auto-login.
|
| + AccountId arc_kiosk_auto_login_account_id_ = EmptyAccountId();
|
| +
|
| // Used to execute login operations.
|
| std::unique_ptr<LoginPerformer> login_performer_;
|
|
|
|
|