New issue
Advanced search Search tips

Issue 657149 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug

Blocking:
issue 648964



Sign in to add a comment

Make SessionManager tracks user sessions

Project Member Reported by xiy...@chromium.org, Oct 18 2016

Issue description

SessionManager is currently a quite empty conceptual component. For historical reasons, UserManager and friends implement the session logic.

Before moving forward with works in  issue 648964  to create mojo replacements for SessionStateDelegate, it would be nice to clean up code and make SessionManager to hold the real impl that mojo-replacement of SessionStateDelegate could use.

Goal:
- Make SessionManager track user sessions;
- Make UserInfo mojo friendly (i.e able to pass through mojo interface);
 
Project Member

Comment 1 by bugdroid1@chromium.org, Oct 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/834f3bc588531d9cea7ee62ffe034ff47c212b05

commit 834f3bc588531d9cea7ee62ffe034ff47c212b05
Author: xiyuan <xiyuan@chromium.org>
Date: Wed Oct 26 19:40:53 2016

user_manager: Remove deps on session_manager

Move session started flag and code from user_manager to
session manager and remove the deps on session_manager.

BUG=657149

Review-Url: https://codereview.chromium.org/2438063002
Cr-Commit-Position: refs/heads/master@{#427773}

[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/accessibility/accessibility_manager_browsertest.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/accessibility/magnification_manager_browsertest.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/app_mode/startup_app_launcher.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/events/keyboard_driven_event_rewriter.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/demo_mode/demo_app_launcher.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/screens/error_screen.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/session/chrome_session_manager.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/session/chrome_session_manager.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/session/restore_after_crash_session_manager_delegate.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/session/user_session_manager.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/users/chrome_user_manager_impl.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/login/users/fake_chrome_user_manager.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/policy/device_local_account_browsertest.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/chromeos/system/tray_accessibility_browsertest.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/extensions/api/braille_display_private/braille_display_private_apitest.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/signin/easy_unlock_service.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/ui/ash/DEPS
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/chrome/browser/ui/ash/session_state_delegate_chromeos.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/session_manager/core/session_manager.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/session_manager/core/session_manager.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/BUILD.gn
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/DEPS
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/fake_user_manager.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/fake_user_manager.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/user_manager.h
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/user_manager_base.cc
[modify] https://crrev.com/834f3bc588531d9cea7ee62ffe034ff47c212b05/components/user_manager/user_manager_base.h

Project Member

Comment 2 by bugdroid1@chromium.org, Oct 28 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/485258770bc096a21594236f7c3ed51492eb651f

commit 485258770bc096a21594236f7c3ed51492eb651f
Author: xiyuan <xiyuan@chromium.org>
Date: Fri Oct 28 01:38:15 2016

session_manager: Create ChromeSessionManager early

- Create ChromeSessionManager early in PreProfileInit so that it can
  be used to track crash-n-restart session that starts there;
- Remove SessionManagerDelgate interface since it is not useful;
- Rename existing SessionManaerDelegate impls to xxxSessionInitializer
  to better reflect what they do;
- Add a ChromeSessionManager::Initialize to replace the
  BrowserProcessPlatformPart::InitializeSessionManager and call one of
  initializers;

BUG=657149

Review-Url: https://codereview.chromium.org/2444383008
Cr-Commit-Position: refs/heads/master@{#428234}

[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/browser_process_platform_part_chromeos.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/browser_process_platform_part_chromeos.h
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/BUILD.gn
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/login/session/chrome_session_manager.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/login/session/chrome_session_manager.h
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/kiosk_auto_launcher_session_manager_delegate.cc
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/kiosk_auto_launcher_session_manager_delegate.h
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/login_oobe_session_manager_delegate.cc
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/login_oobe_session_manager_delegate.h
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/restore_after_crash_session_manager_delegate.cc
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/restore_after_crash_session_manager_delegate.h
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/stub_login_session_manager_delegate.cc
[delete] https://crrev.com/c58fcdb5a500f764ed3c6a38b074887897b92e61/chrome/browser/chromeos/login/session/stub_login_session_manager_delegate.h
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/login/session/user_session_manager.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/login/ui/login_display_host_impl.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/chrome/browser/chromeos/login/ui/user_adding_screen.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/components/session_manager/core/session_manager.cc
[modify] https://crrev.com/485258770bc096a21594236f7c3ed51492eb651f/components/session_manager/core/session_manager.h

Project Member

Comment 3 by bugdroid1@chromium.org, Nov 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/30e213c88354e03ea92fa04853150a9e46da077c

commit 30e213c88354e03ea92fa04853150a9e46da077c
Author: xiyuan <xiyuan@chromium.org>
Date: Tue Nov 01 20:00:57 2016

session_manager: Tracks user sessions

- Add SessionManager::CreateSession to track user sessions.
- Wire UserSessionManager::CreateUserSession with it;
- Wire crash-and-restart code to call it too;
- Add ChromeSessionManagerTest and update crash restore tests to
  cover user session tracking;

BUG=657149
TEST=ChromeSessionManagerTest;CrashRestoreSimpleTest;CrashRestoreComplexTest;

Review-Url: https://codereview.chromium.org/2468483002
Cr-Commit-Position: refs/heads/master@{#429080}

[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/accessibility/accessibility_manager_browsertest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/accessibility/magnification_manager_browsertest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/file_manager/external_filesystem_apitest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/crash_restore_browsertest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/session/chrome_session_manager.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/session/chrome_session_manager.h
[add] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/session/chrome_session_manager_browsertest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/session/user_session_manager.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/login/session/user_session_manager.h
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/chromeos/system/tray_accessibility_browsertest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/extensions/api/braille_display_private/braille_display_private_apitest.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/chrome/test/BUILD.gn
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/BUILD.gn
[add] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/DEPS
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/core/BUILD.gn
[add] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/core/DEPS
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/core/session_manager.cc
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/core/session_manager.h
[modify] https://crrev.com/30e213c88354e03ea92fa04853150a9e46da077c/components/session_manager/session_manager_types.h

Project Member

Comment 5 by bugdroid1@chromium.org, Sep 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d07f5cca5b1f92e473d67e77b89b087a175bc009

commit d07f5cca5b1f92e473d67e77b89b087a175bc009
Author: Xiyuan Xia <xiyuan@chromium.org>
Date: Tue Sep 26 22:24:22 2017

cros: Move UserChangedChildStatus

Move UserChangedChildStatus from UserSessionStateObserver
to UserManager::Observer and renamed it as OnChildStatusChanged.
The justification for this move is that child status is part
of user meta data instead of a user session property. Hence it
belongs to UserManager::Observer.

Bug: 657149
Change-Id: Ibe4ff2f9c13980f5dfc09d1f79454ea8ae81143d
Reviewed-on: https://chromium-review.googlesource.com/669940
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Achuith Bhandarkar <achuith@chromium.org>
Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#504501}
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.cc
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/chrome/browser/ui/ash/session_controller_client.cc
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/chrome/browser/ui/ash/session_controller_client.h
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/components/user_manager/user_manager.cc
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/components/user_manager/user_manager.h
[modify] https://crrev.com/d07f5cca5b1f92e473d67e77b89b087a175bc009/components/user_manager/user_manager_base.cc

Components: UI>Browser>Sessions

Sign in to add a comment