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 /components/session_manager.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 'components/session_manager.gypi')
-rw-r--r-- | components/session_manager.gypi | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/components/session_manager.gypi b/components/session_manager.gypi new file mode 100644 index 0000000..d9c938d --- /dev/null +++ b/components/session_manager.gypi @@ -0,0 +1,26 @@ +# Copyright 2014 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +{ + 'targets': [ + { + 'target_name': 'session_manager_component', + 'type': '<(component)', + 'dependencies': [ + '../base/base.gyp:base', + ], + 'include_dirs': [ + '..', + ], + 'defines': [ + 'SESSION_IMPLEMENTATION', + ], + 'sources': [ + 'session_manager/core/session_manager.h', + 'session_manager/core/session_manager.cc', + 'session_manager/session_manager_export.h', + ], + }, + ], +} |