Chromium Code Reviews| Index: chrome/browser/ui/webui/signin/user_manager_screen_handler.cc |
| diff --git a/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc b/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc |
| index a56bbe86f0f4b62d786d9c086bb32c4b41c3cbb3..f19545ff63e063240d2e745226b25dcf113e0ab6 100644 |
| --- a/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc |
| +++ b/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc |
| @@ -469,12 +469,24 @@ void UserManagerScreenHandler::HandleAuthenticatedLaunchUser( |
| } |
| } |
| - // In order to support the upgrade case where we have a local hash but no |
| - // password token, the user perform a full online reauth. |
| - UserManager::ShowReauthDialog(web_ui()->GetWebContents()->GetBrowserContext(), |
| - email_address_, |
| - signin_metrics::Reason::REASON_UNLOCK); |
| + content::BrowserContext* browser_context = |
| + web_ui()->GetWebContents()->GetBrowserContext(); |
| + |
| +#if !defined(OS_MACOSX) |
|
tommycli
2016/09/21 18:26:59
Why the mac vs. non-mac distinction?
Also the non
zmin
2016/09/21 21:21:37
Because the user_manager implementation on Mac is
tommycli
2016/09/21 21:26:16
Okay that's fine, please add a TODO for yourself e
zmin
2016/09/21 21:52:05
Done.
|
| + if (!email_address_.empty()) { |
| + // In order to support the upgrade case where we have a local hash but no |
| + // password token, the user perform a full online reauth. |
| + UserManager::ShowReauthDialog(browser_context, email_address_, |
| + signin_metrics::Reason::REASON_UNLOCK); |
| + } else { |
| + // Fresh sign in via user manager without existed email address. |
| + UserManager::ShowSigninDialog(browser_context, profile_path); |
| + } |
| } |
| +#else |
| + UserManager::ShowReauthDialog(browser_context, email_address_, |
| + signin_metrics::Reason::REASON_UNLOCK); |
| +#endif |
| void UserManagerScreenHandler::HandleRemoveUser(const base::ListValue* args) { |
| DCHECK(args); |