| Index: chrome/browser/chromeos/login/user_manager_impl.cc
|
| diff --git a/chrome/browser/chromeos/login/user_manager_impl.cc b/chrome/browser/chromeos/login/user_manager_impl.cc
|
| index f959bd25afbeebc8e3fe6f7e085126106e82da41..6f1aa05bfea331368a81cae2af396ce1cb1eb642 100644
|
| --- a/chrome/browser/chromeos/login/user_manager_impl.cc
|
| +++ b/chrome/browser/chromeos/login/user_manager_impl.cc
|
| @@ -224,7 +224,7 @@ UserManagerImpl::UserManagerImpl()
|
| is_current_user_new_(false),
|
| is_current_user_ephemeral_regular_user_(false),
|
| ephemeral_users_enabled_(false),
|
| - merge_session_state_(MERGE_STATUS_NOT_STARTED),
|
| + merge_session_state_(MERGE_STATUS_UNINITILIZED),
|
| observed_sync_service_(NULL),
|
| user_image_manager_(new UserImageManagerImpl),
|
| manager_creation_time_(base::TimeTicks::Now()) {
|
| @@ -422,6 +422,7 @@ void UserManagerImpl::RestoreActiveSessions() {
|
| void UserManagerImpl::SessionStarted() {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| session_started_ = true;
|
| + session_start_time_ = base::Time::Now();
|
| UpdateLoginState();
|
| content::NotificationService::current()->Notify(
|
| chrome::NOTIFICATION_SESSION_STARTED,
|
| @@ -904,6 +905,13 @@ bool UserManagerImpl::IsSessionStarted() const {
|
| return session_started_;
|
| }
|
|
|
| +int64 UserManagerImpl::GetSessionDurationInSeconds() const {
|
| + if (!session_started_)
|
| + return -1;
|
| +
|
| + return (base::Time::Now() - session_start_time_).InSeconds();
|
| +}
|
| +
|
| bool UserManagerImpl::UserSessionsRestored() const {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| return user_sessions_restored_;
|
|
|