OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/ui/login/login_prompt.h" | 5 #include "chrome/browser/ui/login/login_prompt.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
11 #include "base/command_line.h" | 11 #include "base/command_line.h" |
12 #include "base/prefs/pref_service.h" | 12 #include "base/prefs/pref_service.h" |
13 #include "base/strings/string_util.h" | 13 #include "base/strings/string_util.h" |
14 #include "base/strings/utf_string_conversions.h" | 14 #include "base/strings/utf_string_conversions.h" |
15 #include "base/synchronization/lock.h" | 15 #include "base/synchronization/lock.h" |
16 #include "chrome/browser/chrome_notification_types.h" | 16 #include "chrome/browser/chrome_notification_types.h" |
17 #include "chrome/browser/password_manager/chrome_password_manager_client.h" | 17 #include "chrome/browser/password_manager/chrome_password_manager_client.h" |
18 #include "chrome/browser/prerender/prerender_contents.h" | 18 #include "chrome/browser/prerender/prerender_contents.h" |
19 #include "chrome/browser/profiles/profile.h" | 19 #include "chrome/browser/profiles/profile.h" |
20 #include "chrome/browser/tab_contents/tab_util.h" | 20 #include "chrome/browser/tab_contents/tab_util.h" |
21 #include "chrome/browser/ui/login/login_interstitial_delegate.h" | 21 #include "chrome/browser/ui/login/login_interstitial_delegate.h" |
22 #include "chrome/common/pref_names.h" | 22 #include "chrome/common/pref_names.h" |
23 #include "chrome/grit/generated_resources.h" | 23 #include "chrome/grit/generated_resources.h" |
24 #include "components/password_manager/core/browser/browser_save_password_progres
s_logger.h" | 24 #include "components/password_manager/core/browser/browser_save_password_progres
s_logger.h" |
| 25 #include "components/password_manager/core/browser/log_manager.h" |
25 #include "components/password_manager/core/browser/password_manager.h" | 26 #include "components/password_manager/core/browser/password_manager.h" |
26 #include "components/url_formatter/elide_url.h" | 27 #include "components/url_formatter/elide_url.h" |
27 #include "content/public/browser/browser_thread.h" | 28 #include "content/public/browser/browser_thread.h" |
28 #include "content/public/browser/notification_registrar.h" | 29 #include "content/public/browser/notification_registrar.h" |
29 #include "content/public/browser/notification_service.h" | 30 #include "content/public/browser/notification_service.h" |
30 #include "content/public/browser/render_frame_host.h" | 31 #include "content/public/browser/render_frame_host.h" |
31 #include "content/public/browser/resource_dispatcher_host.h" | 32 #include "content/public/browser/resource_dispatcher_host.h" |
32 #include "content/public/browser/resource_request_info.h" | 33 #include "content/public/browser/resource_request_info.h" |
33 #include "content/public/browser/web_contents.h" | 34 #include "content/public/browser/web_contents.h" |
34 #include "net/base/auth.h" | 35 #include "net/base/auth.h" |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 // manager, but still needs to be able to show login prompts. | 141 // manager, but still needs to be able to show login prompts. |
141 if (guest_view::GuestViewBase::FromWebContents(parent_contents)) { | 142 if (guest_view::GuestViewBase::FromWebContents(parent_contents)) { |
142 handler->BuildViewWithoutPasswordManager(explanation); | 143 handler->BuildViewWithoutPasswordManager(explanation); |
143 return; | 144 return; |
144 } | 145 } |
145 #endif | 146 #endif |
146 handler->CancelAuth(); | 147 handler->CancelAuth(); |
147 return; | 148 return; |
148 } | 149 } |
149 | 150 |
150 if (password_manager && password_manager->client()->IsLoggingActive()) { | 151 if (password_manager && |
| 152 password_manager->client()->GetLogManager()->IsLoggingActive()) { |
151 password_manager::BrowserSavePasswordProgressLogger logger( | 153 password_manager::BrowserSavePasswordProgressLogger logger( |
152 password_manager->client()); | 154 password_manager->client()->GetLogManager()); |
153 logger.LogMessage( | 155 logger.LogMessage( |
154 autofill::SavePasswordProgressLogger::STRING_SHOW_LOGIN_PROMPT_METHOD); | 156 autofill::SavePasswordProgressLogger::STRING_SHOW_LOGIN_PROMPT_METHOD); |
155 } | 157 } |
156 | 158 |
157 PasswordForm observed_form( | 159 PasswordForm observed_form( |
158 MakeInputForPasswordManager(request_url, auth_info)); | 160 MakeInputForPasswordManager(request_url, auth_info)); |
159 handler->BuildViewWithPasswordManager(explanation, password_manager, | 161 handler->BuildViewWithPasswordManager(explanation, password_manager, |
160 observed_form); | 162 observed_form); |
161 } | 163 } |
162 | 164 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 password_manager::PasswordManagerClient* client = | 241 password_manager::PasswordManagerClient* client = |
240 ChromePasswordManagerClient::FromWebContents(GetWebContentsForLogin()); | 242 ChromePasswordManagerClient::FromWebContents(GetWebContentsForLogin()); |
241 return client ? client->GetPasswordManager() : nullptr; | 243 return client ? client->GetPasswordManager() : nullptr; |
242 } | 244 } |
243 | 245 |
244 void LoginHandler::SetAuth(const base::string16& username, | 246 void LoginHandler::SetAuth(const base::string16& username, |
245 const base::string16& password) { | 247 const base::string16& password) { |
246 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 248 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
247 | 249 |
248 scoped_ptr<password_manager::BrowserSavePasswordProgressLogger> logger; | 250 scoped_ptr<password_manager::BrowserSavePasswordProgressLogger> logger; |
249 if (password_manager_ && password_manager_->client()->IsLoggingActive()) { | 251 if (password_manager_ && |
| 252 password_manager_->client()->GetLogManager()->IsLoggingActive()) { |
250 logger.reset(new password_manager::BrowserSavePasswordProgressLogger( | 253 logger.reset(new password_manager::BrowserSavePasswordProgressLogger( |
251 password_manager_->client())); | 254 password_manager_->client()->GetLogManager())); |
252 logger->LogMessage( | 255 logger->LogMessage( |
253 autofill::SavePasswordProgressLogger::STRING_SET_AUTH_METHOD); | 256 autofill::SavePasswordProgressLogger::STRING_SET_AUTH_METHOD); |
254 } | 257 } |
255 | 258 |
256 bool already_handled = TestAndSetAuthHandled(); | 259 bool already_handled = TestAndSetAuthHandled(); |
257 if (logger) { | 260 if (logger) { |
258 logger->LogBoolean( | 261 logger->LogBoolean( |
259 autofill::SavePasswordProgressLogger::STRING_AUTHENTICATION_HANDLED, | 262 autofill::SavePasswordProgressLogger::STRING_AUTHENTICATION_HANDLED, |
260 already_handled); | 263 already_handled); |
261 } | 264 } |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
604 signon_realm = auth_info.challenger.ToString(); | 607 signon_realm = auth_info.challenger.ToString(); |
605 signon_realm.append("/"); | 608 signon_realm.append("/"); |
606 } else { | 609 } else { |
607 // Take scheme, host, and port from the url. | 610 // Take scheme, host, and port from the url. |
608 signon_realm = url.GetOrigin().spec(); | 611 signon_realm = url.GetOrigin().spec(); |
609 // This ends with a "/". | 612 // This ends with a "/". |
610 } | 613 } |
611 signon_realm.append(auth_info.realm); | 614 signon_realm.append(auth_info.realm); |
612 return signon_realm; | 615 return signon_realm; |
613 } | 616 } |
OLD | NEW |