Description[session_manager] Move user session initialization code out of ExistingUserController
Added UserSessionManager::InitializeUserSession()
(1) Launches browser for most common case
(2) Continues new user sign in with TOS (public sessions)/image screen (new users)
(3) For kiosk flow delegates launching app to the existing kiosk initialization flow
(1) Currently results in LoginUtils::Get()->DoBrowserLaunch() which may postpone launching browser for these reasons:
(a) There's custom user login flow defined like SupervisedUserCreationFlow. In that case login UI continues to live and custom flow UI is launched in that context.
(b) User has different app locale which requires reloading resource_bundle prior to launching browser
(c) User has custom flags set (or user flags are different from login screen flags defined by the owner), this requires restarting Chrome which will be launched in the active user session.
Small refactoring in ExistingUserController, added
* PerformPreLoginActions() - performs sets of actions right prior to login has been started.
* PerformLoginFinishedActions() - performs set of actions when login has been completed or has been cancelled.
BUG=370175
Committed: https://crrev.com/609c2d1de4a65aa066e3b518186100b0a76ef58e
Cr-Commit-Position: refs/heads/master@{#300708}
Patch Set 1 : Add UserSessionManager::StartSessionType, move cmd line switches from EUC to SU login flow #Patch Set 2 : move first run session init and browser launch out of EUC #
Total comments: 8
Patch Set 3 : review #Patch Set 4 : fix kiosk test #Patch Set 5 : update FakeLoginUtils to launch browser #
Total comments: 4
Patch Set 6 : add PerformPreLoginActions, PerformLoginFinishedActions methods #
Total comments: 8
Patch Set 7 : update mocks expectations #Patch Set 8 : nits #Patch Set 9 : PolicyLoadFailed() #Patch Set 10 : comments #
Total comments: 5
Patch Set 11 : fix typo #Patch Set 12 : review #Patch Set 13 : merge #Messages
Total messages: 32 (12 generated)
|