Index: chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
diff --git a/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc b/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
index e0c01979508610973ef1bae92417cd44bfca0a4d..3ac1de90b29350d222cbfd609d25193a0c0113c5 100644 |
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
@@ -103,6 +103,14 @@ void ManagePasswordsUIController::OnPasswordSubmitted( |
UpdateBubbleAndIconVisibility(); |
} |
+void ManagePasswordsUIController::OnUpdatePasswordSubmitted( |
+ scoped_ptr<PasswordFormManager> form_manager) { |
+ passwords_data_.OnUpdatePassword(form_manager.Pass()); |
+ timer_.reset(new base::ElapsedTimer); |
+ base::AutoReset<bool> resetter(&should_pop_up_bubble_, true); |
+ UpdateBubbleAndIconVisibility(); |
+} |
+ |
bool ManagePasswordsUIController::OnChooseCredentials( |
ScopedVector<autofill::PasswordForm> local_credentials, |
ScopedVector<autofill::PasswordForm> federated_credentials, |
@@ -205,6 +213,14 @@ void ManagePasswordsUIController::SavePassword() { |
UpdateBubbleAndIconVisibility(); |
} |
+void ManagePasswordsUIController::UpdatePassword( |
+ const autofill::PasswordForm& password_form) { |
+ DCHECK(state() == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE); |
vabr (Chromium)
2015/07/29 15:29:19
nit: DCHECK_EQ(password_manager::ui::PENDING_PASSW
dvadym
2015/07/30 11:22:44
Done.
|
+ UpdatePasswordInternal(password_form); |
+ passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE); |
+ UpdateBubbleAndIconVisibility(); |
+} |
+ |
void ManagePasswordsUIController::ChooseCredential( |
const autofill::PasswordForm& form, |
password_manager::CredentialType credential_type) { |
@@ -248,10 +264,16 @@ void ManagePasswordsUIController::ChooseCredential( |
void ManagePasswordsUIController::SavePasswordInternal() { |
password_manager::PasswordFormManager* form_manager = |
passwords_data_.form_manager(); |
- DCHECK(form_manager); |
form_manager->Save(); |
} |
+void ManagePasswordsUIController::UpdatePasswordInternal( |
+ const autofill::PasswordForm& password_form) { |
+ password_manager::PasswordFormManager* form_manager = |
+ passwords_data_.form_manager(); |
+ form_manager->Update(password_form); |
+} |
+ |
void ManagePasswordsUIController::NeverSavePassword() { |
DCHECK(PasswordPendingUserDecision()); |
NeverSavePasswordInternal(); |
@@ -321,7 +343,9 @@ void ManagePasswordsUIController::WasHidden() { |
const autofill::PasswordForm& ManagePasswordsUIController:: |
PendingPassword() const { |
DCHECK(state() == password_manager::ui::PENDING_PASSWORD_STATE || |
- state() == password_manager::ui::CONFIRMATION_STATE) << state(); |
+ state() == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE || |
+ state() == password_manager::ui::CONFIRMATION_STATE) |
+ << state(); |
password_manager::PasswordFormManager* form_manager = |
passwords_data_.form_manager(); |
DCHECK(form_manager); |