| OLD | NEW | 
|    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/password_manager/chrome_password_manager_client.h" |    5 #include "chrome/browser/password_manager/chrome_password_manager_client.h" | 
|    6  |    6  | 
|    7 #include "base/bind_helpers.h" |    7 #include "base/bind_helpers.h" | 
|    8 #include "base/command_line.h" |    8 #include "base/command_line.h" | 
|    9 #include "base/memory/singleton.h" |    9 #include "base/memory/singleton.h" | 
|   10 #include "base/metrics/histogram.h" |   10 #include "base/metrics/histogram.h" | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
|   35 #include "components/password_manager/core/browser/password_manager_internals_se
     rvice.h" |   35 #include "components/password_manager/core/browser/password_manager_internals_se
     rvice.h" | 
|   36 #include "components/password_manager/core/browser/password_manager_metrics_util
     .h" |   36 #include "components/password_manager/core/browser/password_manager_metrics_util
     .h" | 
|   37 #include "components/password_manager/core/common/password_manager_switches.h" |   37 #include "components/password_manager/core/common/password_manager_switches.h" | 
|   38 #include "content/public/browser/navigation_entry.h" |   38 #include "content/public/browser/navigation_entry.h" | 
|   39 #include "content/public/browser/render_view_host.h" |   39 #include "content/public/browser/render_view_host.h" | 
|   40 #include "content/public/browser/web_contents.h" |   40 #include "content/public/browser/web_contents.h" | 
|   41 #include "google_apis/gaia/gaia_urls.h" |   41 #include "google_apis/gaia/gaia_urls.h" | 
|   42 #include "net/base/url_util.h" |   42 #include "net/base/url_util.h" | 
|   43 #include "third_party/re2/re2/re2.h" |   43 #include "third_party/re2/re2/re2.h" | 
|   44  |   44  | 
|   45 #if defined(OS_ANDROID) |  | 
|   46 #include "chrome/browser/android/password_authentication_manager.h" |  | 
|   47 #endif  // OS_ANDROID |  | 
|   48  |  | 
|   49 using password_manager::PasswordManagerInternalsService; |   45 using password_manager::PasswordManagerInternalsService; | 
|   50 using password_manager::PasswordManagerInternalsServiceFactory; |   46 using password_manager::PasswordManagerInternalsServiceFactory; | 
|   51  |   47  | 
|   52 DEFINE_WEB_CONTENTS_USER_DATA_KEY(ChromePasswordManagerClient); |   48 DEFINE_WEB_CONTENTS_USER_DATA_KEY(ChromePasswordManagerClient); | 
|   53  |   49  | 
|   54 // static |   50 // static | 
|   55 void ChromePasswordManagerClient::CreateForWebContentsWithAutofillClient( |   51 void ChromePasswordManagerClient::CreateForWebContentsWithAutofillClient( | 
|   56     content::WebContents* contents, |   52     content::WebContents* contents, | 
|   57     autofill::AutofillClient* autofill_client) { |   53     autofill::AutofillClient* autofill_client) { | 
|   58   if (FromWebContents(contents)) |   54   if (FromWebContents(contents)) | 
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  196 void ChromePasswordManagerClient::PasswordAutofillWasBlocked( |  192 void ChromePasswordManagerClient::PasswordAutofillWasBlocked( | 
|  197     const autofill::PasswordFormMap& best_matches) const { |  193     const autofill::PasswordFormMap& best_matches) const { | 
|  198   ManagePasswordsUIController* controller = |  194   ManagePasswordsUIController* controller = | 
|  199       ManagePasswordsUIController::FromWebContents(web_contents()); |  195       ManagePasswordsUIController::FromWebContents(web_contents()); | 
|  200   if (controller && IsTheHotNewBubbleUIEnabled()) |  196   if (controller && IsTheHotNewBubbleUIEnabled()) | 
|  201     controller->OnBlacklistBlockedAutofill(best_matches); |  197     controller->OnBlacklistBlockedAutofill(best_matches); | 
|  202 } |  198 } | 
|  203  |  199  | 
|  204 void ChromePasswordManagerClient::AuthenticateAutofillAndFillForm( |  200 void ChromePasswordManagerClient::AuthenticateAutofillAndFillForm( | 
|  205       scoped_ptr<autofill::PasswordFormFillData> fill_data) { |  201       scoped_ptr<autofill::PasswordFormFillData> fill_data) { | 
|  206 #if defined(OS_ANDROID) |  | 
|  207   PasswordAuthenticationManager::AuthenticatePasswordAutofill( |  | 
|  208       web_contents(), |  | 
|  209       base::Bind(&ChromePasswordManagerClient::CommitFillPasswordForm, |  | 
|  210                  weak_factory_.GetWeakPtr(), |  | 
|  211                  base::Owned(fill_data.release()))); |  | 
|  212 #else |  | 
|  213   // Additional authentication is currently only available for Android, so all |  | 
|  214   // other plaftorms should just fill the password form directly. |  | 
|  215   CommitFillPasswordForm(fill_data.get()); |  202   CommitFillPasswordForm(fill_data.get()); | 
|  216 #endif  // OS_ANDROID |  | 
|  217 } |  203 } | 
|  218  |  204  | 
|  219 void ChromePasswordManagerClient::HidePasswordGenerationPopup() { |  205 void ChromePasswordManagerClient::HidePasswordGenerationPopup() { | 
|  220   if (popup_controller_) |  206   if (popup_controller_) | 
|  221     popup_controller_->HideAndDestroy(); |  207     popup_controller_->HideAndDestroy(); | 
|  222 } |  208 } | 
|  223  |  209  | 
|  224 PrefService* ChromePasswordManagerClient::GetPrefs() { |  210 PrefService* ChromePasswordManagerClient::GetPrefs() { | 
|  225   return profile_->GetPrefs(); |  211   return profile_->GetPrefs(); | 
|  226 } |  212 } | 
| (...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  506  |  492  | 
|  507   if (group_name == "DisallowSyncCredentialsForReauth") { |  493   if (group_name == "DisallowSyncCredentialsForReauth") { | 
|  508     autofill_sync_state_ = DISALLOW_SYNC_CREDENTIALS_FOR_REAUTH; |  494     autofill_sync_state_ = DISALLOW_SYNC_CREDENTIALS_FOR_REAUTH; | 
|  509   } else if (group_name == "DisallowSyncCredentials") { |  495   } else if (group_name == "DisallowSyncCredentials") { | 
|  510       autofill_sync_state_ = DISALLOW_SYNC_CREDENTIALS; |  496       autofill_sync_state_ = DISALLOW_SYNC_CREDENTIALS; | 
|  511   } else { |  497   } else { | 
|  512     // Allow by default. |  498     // Allow by default. | 
|  513     autofill_sync_state_ = ALLOW_SYNC_CREDENTIALS; |  499     autofill_sync_state_ = ALLOW_SYNC_CREDENTIALS; | 
|  514   } |  500   } | 
|  515 } |  501 } | 
| OLD | NEW |