| Index: chrome/browser/password_manager/password_manager.cc
|
| diff --git a/chrome/browser/password_manager/password_manager.cc b/chrome/browser/password_manager/password_manager.cc
|
| index a262a1841547543a9f09ca185515b71bad2a1a3f..2affc0b6c6d6b37e869b6f92f21e0925e811ccdc 100644
|
| --- a/chrome/browser/password_manager/password_manager.cc
|
| +++ b/chrome/browser/password_manager/password_manager.cc
|
| @@ -268,6 +268,12 @@ void PasswordManager::OnPasswordFormsParsed(
|
| }
|
| }
|
|
|
| +bool PasswordManager::ShouldShowSavePasswordInfoBar() const {
|
| + return provisional_save_manager_->IsNewLogin() &&
|
| + !provisional_save_manager_->HasGeneratedPassword() &&
|
| + !provisional_save_manager_->IsPendingCredentialsPublicSuffixMatch();
|
| +}
|
| +
|
| void PasswordManager::OnPasswordFormsRendered(
|
| const std::vector<PasswordForm>& visible_forms) {
|
| if (!provisional_save_manager_.get())
|
| @@ -302,8 +308,7 @@ void PasswordManager::OnPasswordFormsRendered(
|
| provisional_save_manager_->SubmitPassed();
|
| if (provisional_save_manager_->HasGeneratedPassword())
|
| UMA_HISTOGRAM_COUNTS("PasswordGeneration.Submitted", 1);
|
| - if (provisional_save_manager_->IsNewLogin() &&
|
| - !provisional_save_manager_->HasGeneratedPassword()) {
|
| + if (ShouldShowSavePasswordInfoBar()) {
|
| delegate_->AddSavePasswordInfoBarIfPermitted(
|
| provisional_save_manager_.release());
|
| } else {
|
|
|