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

Side by Side Diff: chrome/browser/chromeos/login/screens/user_selection_screen.cc

Issue 2785003002: cros: Showing pin on lock is no longer associated with sending user list. (Closed)
Patch Set: Address comments Created 3 years, 8 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 unified diff | Download patch
« no previous file with comments | « no previous file | chrome/browser/resources/chromeos/login/lock.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h" 5 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 // User dictionary keys. 42 // User dictionary keys.
43 const char kKeyUsername[] = "username"; 43 const char kKeyUsername[] = "username";
44 const char kKeyGaiaID[] = "gaiaId"; 44 const char kKeyGaiaID[] = "gaiaId";
45 const char kKeyDisplayName[] = "displayName"; 45 const char kKeyDisplayName[] = "displayName";
46 const char kKeyEmailAddress[] = "emailAddress"; 46 const char kKeyEmailAddress[] = "emailAddress";
47 const char kKeyEnterpriseDomain[] = "enterpriseDomain"; 47 const char kKeyEnterpriseDomain[] = "enterpriseDomain";
48 const char kKeyPublicAccount[] = "publicAccount"; 48 const char kKeyPublicAccount[] = "publicAccount";
49 const char kKeyLegacySupervisedUser[] = "legacySupervisedUser"; 49 const char kKeyLegacySupervisedUser[] = "legacySupervisedUser";
50 const char kKeyChildUser[] = "childUser"; 50 const char kKeyChildUser[] = "childUser";
51 const char kKeyDesktopUser[] = "isDesktopUser"; 51 const char kKeyDesktopUser[] = "isDesktopUser";
52 const char kKeyShowPin[] = "showPin";
53 const char kKeySignedIn[] = "signedIn"; 52 const char kKeySignedIn[] = "signedIn";
54 const char kKeyCanRemove[] = "canRemove"; 53 const char kKeyCanRemove[] = "canRemove";
55 const char kKeyIsOwner[] = "isOwner"; 54 const char kKeyIsOwner[] = "isOwner";
56 const char kKeyIsActiveDirectory[] = "isActiveDirectory"; 55 const char kKeyIsActiveDirectory[] = "isActiveDirectory";
57 const char kKeyInitialAuthType[] = "initialAuthType"; 56 const char kKeyInitialAuthType[] = "initialAuthType";
58 const char kKeyMultiProfilesAllowed[] = "isMultiProfilesAllowed"; 57 const char kKeyMultiProfilesAllowed[] = "isMultiProfilesAllowed";
59 const char kKeyMultiProfilesPolicy[] = "multiProfilesPolicy"; 58 const char kKeyMultiProfilesPolicy[] = "multiProfilesPolicy";
60 const char kKeyInitialLocales[] = "initialLocales"; 59 const char kKeyInitialLocales[] = "initialLocales";
61 const char kKeyInitialLocale[] = "initialLocale"; 60 const char kKeyInitialLocale[] = "initialLocale";
62 const char kKeyInitialMultipleRecommendedLocales[] = 61 const char kKeyInitialMultipleRecommendedLocales[] =
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 // locales). 110 // locales).
112 user_dict->SetBoolean(kKeyInitialMultipleRecommendedLocales, 111 user_dict->SetBoolean(kKeyInitialMultipleRecommendedLocales,
113 recommended_locales.size() >= 2); 112 recommended_locales.size() >= 2);
114 113
115 // Set |kKeyInitialKeyboardLayout| to the current keyboard layout. This 114 // Set |kKeyInitialKeyboardLayout| to the current keyboard layout. This
116 // value will be used temporarily only because the UI immediately requests a 115 // value will be used temporarily only because the UI immediately requests a
117 // list of keyboard layouts suitable for the currently selected locale. 116 // list of keyboard layouts suitable for the currently selected locale.
118 user_dict->Set(kKeyInitialKeyboardLayout, GetCurrentKeyboardLayout()); 117 user_dict->Set(kKeyInitialKeyboardLayout, GetCurrentKeyboardLayout());
119 } 118 }
120 119
121 // Returns true if the PIN keyboard should be displayed for the given |user|.
122 bool CanShowPinForUser(user_manager::User* user) {
123 if (!user->is_logged_in())
124 return false;
125
126 quick_unlock::QuickUnlockStorage* quick_unlock_storage =
127 quick_unlock::QuickUnlockFactory::GetForUser(user);
128 if (!quick_unlock_storage)
129 return false;
130
131 return quick_unlock_storage->IsPinAuthenticationAvailable();
132 }
133
134 // Returns true if the fingerprint icon should be displayed for the given 120 // Returns true if the fingerprint icon should be displayed for the given
135 // |user|. 121 // |user|.
136 bool AllowFingerprintForUser(user_manager::User* user) { 122 bool AllowFingerprintForUser(user_manager::User* user) {
137 if (!user->is_logged_in()) 123 if (!user->is_logged_in())
138 return false; 124 return false;
139 125
140 quick_unlock::QuickUnlockStorage* quick_unlock_storage = 126 quick_unlock::QuickUnlockStorage* quick_unlock_storage =
141 quick_unlock::QuickUnlockFactory::GetForUser(user); 127 quick_unlock::QuickUnlockFactory::GetForUser(user);
142 if (!quick_unlock_storage) 128 if (!quick_unlock_storage)
143 return false; 129 return false;
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 const bool is_child_user = user->GetType() == user_manager::USER_TYPE_CHILD; 169 const bool is_child_user = user->GetType() == user_manager::USER_TYPE_CHILD;
184 170
185 user_dict->SetString(kKeyUsername, user->GetAccountId().Serialize()); 171 user_dict->SetString(kKeyUsername, user->GetAccountId().Serialize());
186 user_dict->SetString(kKeyEmailAddress, user->display_email()); 172 user_dict->SetString(kKeyEmailAddress, user->display_email());
187 user_dict->SetString(kKeyDisplayName, user->GetDisplayName()); 173 user_dict->SetString(kKeyDisplayName, user->GetDisplayName());
188 user_dict->SetBoolean(kKeyPublicAccount, is_public_session); 174 user_dict->SetBoolean(kKeyPublicAccount, is_public_session);
189 user_dict->SetBoolean(kKeyLegacySupervisedUser, is_legacy_supervised_user); 175 user_dict->SetBoolean(kKeyLegacySupervisedUser, is_legacy_supervised_user);
190 user_dict->SetBoolean(kKeyChildUser, is_child_user); 176 user_dict->SetBoolean(kKeyChildUser, is_child_user);
191 user_dict->SetBoolean(kKeyDesktopUser, false); 177 user_dict->SetBoolean(kKeyDesktopUser, false);
192 user_dict->SetInteger(kKeyInitialAuthType, auth_type); 178 user_dict->SetInteger(kKeyInitialAuthType, auth_type);
193 user_dict->SetBoolean(kKeyShowPin, CanShowPinForUser(user));
194 user_dict->SetBoolean(kKeySignedIn, user->is_logged_in()); 179 user_dict->SetBoolean(kKeySignedIn, user->is_logged_in());
195 user_dict->SetBoolean(kKeyIsOwner, is_owner); 180 user_dict->SetBoolean(kKeyIsOwner, is_owner);
196 user_dict->SetBoolean(kKeyIsActiveDirectory, user->IsActiveDirectoryUser()); 181 user_dict->SetBoolean(kKeyIsActiveDirectory, user->IsActiveDirectoryUser());
197 user_dict->SetBoolean(kKeyAllowFingerprint, AllowFingerprintForUser(user)); 182 user_dict->SetBoolean(kKeyAllowFingerprint, AllowFingerprintForUser(user));
198 183
199 FillMultiProfileUserPrefs(user, user_dict, is_signin_to_add); 184 FillMultiProfileUserPrefs(user, user_dict, is_signin_to_add);
200 FillKnownUserPrefs(user, user_dict); 185 FillKnownUserPrefs(user, user_dict);
201 186
202 if (is_public_session) { 187 if (is_public_session) {
203 AddPublicSessionDetailsToUserDictionaryEntry( 188 AddPublicSessionDetailsToUserDictionaryEntry(
(...skipping 393 matching lines...) Expand 10 before | Expand all | Expand 10 after
597 // The user profile should exist if and only if this is the lock screen. 582 // The user profile should exist if and only if this is the lock screen.
598 DCHECK_EQ(!!profile, GetScreenType() == LOCK_SCREEN); 583 DCHECK_EQ(!!profile, GetScreenType() == LOCK_SCREEN);
599 584
600 if (!profile) 585 if (!profile)
601 profile = profile_helper->GetSigninProfile(); 586 profile = profile_helper->GetSigninProfile();
602 587
603 return EasyUnlockService::Get(profile); 588 return EasyUnlockService::Get(profile);
604 } 589 }
605 590
606 } // namespace chromeos 591 } // namespace chromeos
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/resources/chromeos/login/lock.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698