| Index: chrome/browser/chromeos/login/user_manager.h
|
| diff --git a/chrome/browser/chromeos/login/user_manager.h b/chrome/browser/chromeos/login/user_manager.h
|
| index 13a95dd2f24c8b6b94c596ad17b35f3b55a7d0fb..168ea81543dfb609f0f2cc683184573b1217b823 100644
|
| --- a/chrome/browser/chromeos/login/user_manager.h
|
| +++ b/chrome/browser/chromeos/login/user_manager.h
|
| @@ -21,13 +21,27 @@ class UserImageManager;
|
| // who have logged into this Chrome OS device before and updating that list.
|
| class UserManager {
|
| public:
|
| + // Status of merge sessions process which is responsible for exchanging
|
| + // user OAuth2 refresh token for GAIA cookies.
|
| + enum MergeSessionState {
|
| + // Session merge hasn't started yet.
|
| + MERGE_STATUS_NOT_STARTED,
|
| + // Session merge is in process.
|
| + MERGE_STATUS_IN_PROCESS,
|
| + // Session merge is completed.
|
| + MERGE_STATUS_DONE,
|
| + };
|
| +
|
| // Interface that observers of UserManager must implement in order
|
| // to receive notification when local state preferences is changed
|
| class Observer {
|
| public:
|
| - // Called when the local state preferences is changed
|
| + // Called when the local state preferences is changed.
|
| virtual void LocalStateChanged(UserManager* user_manager) = 0;
|
|
|
| + // Called when merge session state is changed.
|
| + virtual void MergeSessionStateChanged(MergeSessionState state) {}
|
| +
|
| protected:
|
| virtual ~Observer() {}
|
| };
|
| @@ -211,6 +225,12 @@ class UserManager {
|
| // or restart after crash.
|
| virtual bool IsSessionStarted() const = 0;
|
|
|
| + // Returns merge session status.
|
| + virtual MergeSessionState GetMergeSessionState() const = 0;
|
| +
|
| + // Changes merge session status.
|
| + virtual void SetMergeSessionState(MergeSessionState status) = 0;
|
| +
|
| // Returns true when the browser has crashed and restarted during the current
|
| // user's session.
|
| virtual bool HasBrowserRestarted() const = 0;
|
|
|