diff options
author | nkostylev@chromium.org <nkostylev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-16 18:20:44 +0000 |
---|---|---|
committer | nkostylev@chromium.org <nkostylev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-16 18:20:44 +0000 |
commit | b88d2c6ea6193c41e1befeb7c4964ad2dbd794e6 (patch) | |
tree | 73f60798a961a0c98faed6ab7e771a39f7376822 /chrome/chrome_browser_chromeos.gypi | |
parent | e9931bb5f68d403d1ee4947629165895b183324b (diff) | |
download | chromium_src-b88d2c6ea6193c41e1befeb7c4964ad2dbd794e6.zip chromium_src-b88d2c6ea6193c41e1befeb7c4964ad2dbd794e6.tar.gz chromium_src-b88d2c6ea6193c41e1befeb7c4964ad2dbd794e6.tar.bz2 |
[cros] Define session_manager component with SessionManager base class
SessionManager is responsible for performing Chrome OS-specific steps to re-launch user session (after crash/stub or in tests) or pre-session UI such as out-of-box or login.
ChromeSessionManager is chrome/browser implementation of SessionManager.
SessionManager is initialized with specific delegate that is reponsible for initial behavior. These delegates are introduced, see ChromeSessionManager::CreateSessionManager():
* LoginOobeSessionManagerDelegate - launches either out-of-box or login UI,
actual branching still happens in ShowLoginWizard()
* RestoreAfterCrashSessionManagerDelegate - responsible for re-launching Chrome into existing user session,
happens after browser process crash or in "stub user" session.
* StubLoginSessionManagerDelegate - starts "stub user" session, when executed on non-CrOS machine w/o parameters or in tests. Extends RestoreAfterCrashSessionManagerDelegate.
* KioskAutoLauncherSessionManagerDelegate - automatically starts kiosk app session.
Code move in ChromeBrowserMainPartsChromeos:
* OptionallyRunChromeOSLoginManager() -> ChromeSessionManager::CreateSessionManager()
* RunAutoLaunchKioskApp() -> KioskAutoLauncherSessionManagerDelegate
* Session restore code in PostProfileInit() -> RestoreAfterCrashSessionManagerDelegate
* Blocks in OptionallyRunChromeOSLoginManager -> to delegates.
BUG=387610
Review URL: https://codereview.chromium.org/363613004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283437 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/chrome_browser_chromeos.gypi')
-rw-r--r-- | chrome/chrome_browser_chromeos.gypi | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/chrome/chrome_browser_chromeos.gypi b/chrome/chrome_browser_chromeos.gypi index 31a6a05..4ede722 100644 --- a/chrome/chrome_browser_chromeos.gypi +++ b/chrome/chrome_browser_chromeos.gypi @@ -52,6 +52,7 @@ '../components/components.gyp:cloud_policy_proto', '../components/components.gyp:onc_component', '../components/components.gyp:policy', + '../components/components.gyp:session_manager_component', '../components/components.gyp:user_manager', # This depends directly on the variations target, rather than just # transitively via the common target because the proto sources need to @@ -647,6 +648,16 @@ 'browser/chromeos/login/screens/wrong_hwid_screen.cc', 'browser/chromeos/login/screens/wrong_hwid_screen.h', 'browser/chromeos/login/screens/wrong_hwid_screen_actor.h', + 'browser/chromeos/login/session/chrome_session_manager.cc', + 'browser/chromeos/login/session/chrome_session_manager.h', + 'browser/chromeos/login/session/kiosk_auto_launcher_session_manager_delegate.cc', + 'browser/chromeos/login/session/kiosk_auto_launcher_session_manager_delegate.h', + 'browser/chromeos/login/session/login_oobe_session_manager_delegate.cc', + 'browser/chromeos/login/session/login_oobe_session_manager_delegate.h', + 'browser/chromeos/login/session/restore_after_crash_session_manager_delegate.cc', + 'browser/chromeos/login/session/restore_after_crash_session_manager_delegate.h', + 'browser/chromeos/login/session/stub_login_session_manager_delegate.cc', + 'browser/chromeos/login/session/stub_login_session_manager_delegate.h', 'browser/chromeos/login/session/user_session_manager.cc', 'browser/chromeos/login/session/user_session_manager.h', 'browser/chromeos/login/signin/auth_sync_observer.cc', |