| Index: chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
|
| diff --git a/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc b/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
|
| index f83dbb4bb8c5dce328ae3f556f66cf664272f626..83cea52299c5eaa94235f1a69fc2a6d49926f61f 100644
|
| --- a/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
|
| +++ b/chrome/browser/ui/passwords/manage_passwords_bubble_model.cc
|
| @@ -13,6 +13,7 @@
|
| #include "chrome/grit/generated_resources.h"
|
| #include "components/feedback/feedback_data.h"
|
| #include "components/feedback/feedback_util.h"
|
| +#include "components/password_manager/content/common/credential_manager_types.h"
|
| #include "components/password_manager/core/browser/password_manager_url_collection_experiment.h"
|
| #include "components/password_manager/core/browser/password_store.h"
|
| #include "components/password_manager/core/common/password_manager_ui.h"
|
| @@ -121,10 +122,13 @@ ManagePasswordsBubbleModel::ManagePasswordsBubbleModel(
|
| state_ = controller->state();
|
| if (password_manager::ui::IsPendingState(state_))
|
| pending_password_ = controller->PendingPassword();
|
| - if (password_manager::ui::IsCredentialsState(state_))
|
| - pending_credentials_.swap(controller->new_password_forms());
|
| - else
|
| + if (password_manager::ui::IsCredentialsState(state_)) {
|
| + local_pending_credentials_.swap(controller->local_credentials_forms());
|
| + federated_pending_credentials_.swap(
|
| + controller->federated_credentials_forms());
|
| + } else {
|
| best_matches_ = controller->best_matches();
|
| + }
|
|
|
| if (password_manager::ui::IsPendingState(state_)) {
|
| title_ = PendingStateTitleBasedOnSavePasswordPref(never_save_passwords_);
|
| @@ -197,8 +201,9 @@ void ManagePasswordsBubbleModel::OnBubbleHidden() {
|
| // OnChooseCredentials().
|
| ManagePasswordsUIController* manage_passwords_ui_controller =
|
| ManagePasswordsUIController::FromWebContents(web_contents());
|
| - manage_passwords_ui_controller->ChooseCredential(false,
|
| - autofill::PasswordForm());
|
| + manage_passwords_ui_controller->ChooseCredential(
|
| + autofill::PasswordForm(),
|
| + password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY);
|
| state_ = password_manager::ui::INACTIVE_STATE;
|
| }
|
| if (dismissal_reason_ == metrics_util::NOT_DISPLAYED)
|
| @@ -317,12 +322,14 @@ void ManagePasswordsBubbleModel::OnPasswordAction(
|
| }
|
|
|
| void ManagePasswordsBubbleModel::OnChooseCredentials(
|
| - const autofill::PasswordForm& password_form) {
|
| + const autofill::PasswordForm& password_form,
|
| + password_manager::CredentialType credential_type) {
|
| dismissal_reason_ = metrics_util::CLICKED_CREDENTIAL;
|
| RecordExperimentStatistics(web_contents(), dismissal_reason_);
|
| ManagePasswordsUIController* manage_passwords_ui_controller =
|
| ManagePasswordsUIController::FromWebContents(web_contents());
|
| - manage_passwords_ui_controller->ChooseCredential(true, password_form);
|
| + manage_passwords_ui_controller->ChooseCredential(password_form,
|
| + credential_type);
|
| state_ = password_manager::ui::INACTIVE_STATE;
|
| }
|
|
|
|
|