Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3755)

Unified Diff: chrome/browser/chromeos/login/screens/user_selection_screen.cc

Issue 420243002: Refactoring IsUserAllowedInSession and GetCachedValue (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/chromeos/login/users/chrome_user_manager.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/login/screens/user_selection_screen.cc
diff --git a/chrome/browser/chromeos/login/screens/user_selection_screen.cc b/chrome/browser/chromeos/login/screens/user_selection_screen.cc
index f29b334ca31ebb89fdb5c01fe252a0b129720a0b..a2bc1c7c94edbd12cdb2b242bd5941d9a9854627 100644
--- a/chrome/browser/chromeos/login/screens/user_selection_screen.cc
+++ b/chrome/browser/chromeos/login/screens/user_selection_screen.cc
@@ -84,11 +84,19 @@ void UserSelectionScreen::FillUserDictionary(
if (is_signin_to_add) {
MultiProfileUserController* multi_profile_user_controller =
UserManager::Get()->GetMultiProfileUserController();
- std::string behavior =
- multi_profile_user_controller->GetCachedValue(user_id);
- user_dict->SetBoolean(kKeyMultiProfilesAllowed,
- multi_profile_user_controller->IsUserAllowedInSession(
- user_id) == MultiProfileUserController::ALLOWED);
+ MultiProfileUserController::UserAllowedInSessionReason isUserAllowedReason;
+ bool isUserAllowed = multi_profile_user_controller->IsUserAllowedInSession(
+ user_id, &isUserAllowedReason);
+ user_dict->SetBoolean(kKeyMultiProfilesAllowed, isUserAllowed);
+
+ std::string behavior;
+ switch (isUserAllowedReason) {
+ case MultiProfileUserController::NOT_ALLOWED_OWNER_AS_SECONDARY:
+ behavior = MultiProfileUserController::kBehaviorOwnerPrimaryOnly;
+ break;
+ default:
+ behavior = multi_profile_user_controller->GetCachedValue(user_id);
+ }
user_dict->SetString(kKeyMultiProfilesPolicy, behavior);
} else {
user_dict->SetBoolean(kKeyMultiProfilesAllowed, true);
« no previous file with comments | « no previous file | chrome/browser/chromeos/login/users/chrome_user_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698