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

Side by Side Diff: chrome/browser/chromeos/login/login_utils.cc

Issue 3413021: Implement users options handling in login screen. (Closed) Base URL: http://src.chromium.org/git/chromium.git
Patch Set: for tfarina,dpolukhin,nkostylev #1 Created 10 years, 3 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
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/login_utils.h" 5 #include "chrome/browser/chromeos/login/login_utils.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "base/file_util.h" 9 #include "base/file_util.h"
10 #include "base/lock.h" 10 #include "base/lock.h"
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 }; 132 };
133 133
134 void LoginUtilsImpl::CompleteLogin(const std::string& username, 134 void LoginUtilsImpl::CompleteLogin(const std::string& username,
135 const GaiaAuthConsumer::ClientLoginResult& credentials) { 135 const GaiaAuthConsumer::ClientLoginResult& credentials) {
136 136
137 LOG(INFO) << "Completing login for " << username; 137 LOG(INFO) << "Completing login for " << username;
138 138
139 if (CrosLibrary::Get()->EnsureLoaded()) 139 if (CrosLibrary::Get()->EnsureLoaded())
140 CrosLibrary::Get()->GetLoginLibrary()->StartSession(username, ""); 140 CrosLibrary::Get()->GetLoginLibrary()->StartSession(username, "");
141 141
142 const std::vector<UserManager::User>& users = UserManager::Get()->GetUsers(); 142 bool first_login = !UserManager::Get()->IsKnownUser(username);
143
144 bool first_login = true;
145 for (std::vector<UserManager::User>::const_iterator it = users.begin();
146 it < users.end(); ++it) {
147 std::string user_email = it->email();
148 if (username == user_email) {
149 first_login = false;
150 break;
151 }
152 }
153
154 UserManager::Get()->UserLoggedIn(username); 143 UserManager::Get()->UserLoggedIn(username);
155 144
156 // Now launch the initial browser window. 145 // Now launch the initial browser window.
157 FilePath user_data_dir; 146 FilePath user_data_dir;
158 PathService::Get(chrome::DIR_USER_DATA, &user_data_dir); 147 PathService::Get(chrome::DIR_USER_DATA, &user_data_dir);
159 ProfileManager* profile_manager = g_browser_process->profile_manager(); 148 ProfileManager* profile_manager = g_browser_process->profile_manager();
160 // The default profile will have been changed because the ProfileManager 149 // The default profile will have been changed because the ProfileManager
161 // will process the notification that the UserManager sends out. 150 // will process the notification that the UserManager sends out.
162 Profile* profile = profile_manager->GetDefaultProfile(user_data_dir); 151 Profile* profile = profile_manager->GetDefaultProfile(user_data_dir);
163 152
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 BrowserInit browser_init; 296 BrowserInit browser_init;
308 int return_code; 297 int return_code;
309 browser_init.LaunchBrowser(*CommandLine::ForCurrentProcess(), 298 browser_init.LaunchBrowser(*CommandLine::ForCurrentProcess(),
310 profile, 299 profile,
311 FilePath(), 300 FilePath(),
312 true, 301 true,
313 &return_code); 302 &return_code);
314 } 303 }
315 304
316 } // namespace chromeos 305 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698