Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1166)

Unified Diff: chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc

Issue 259153004: Password bubble: Give users the option of unblacklisting a site. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc
diff --git a/chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc b/chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc
index 88c76e64107b753d5d0099dfe3bbbdab3dc51476..65613f58718afe9c205a4c9804284fa760b13be0 100644
--- a/chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc
+++ b/chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.cc
@@ -80,7 +80,10 @@ void ManagePasswordsBubbleUIController::OnPasswordAutofilled(
UpdateBubbleAndIconVisibility();
}
-void ManagePasswordsBubbleUIController::OnBlacklistBlockedAutofill() {
+void ManagePasswordsBubbleUIController::OnBlacklistBlockedAutofill(
+ const PasswordFormMap& password_form_map) {
+ password_form_map_ = password_form_map;
+ origin_ = password_form_map_.begin()->second->origin;
manage_passwords_icon_to_be_shown_ = true;
password_to_be_saved_ = false;
manage_passwords_bubble_needs_showing_ = false;
@@ -130,11 +133,34 @@ void ManagePasswordsBubbleUIController::
void ManagePasswordsBubbleUIController::SavePassword() {
DCHECK(form_manager_.get());
form_manager_->Save();
+ password_to_be_saved_ = false;
}
void ManagePasswordsBubbleUIController::NeverSavePassword() {
DCHECK(form_manager_.get());
form_manager_->PermanentlyBlacklist();
+ autofill_blocked_ = true;
+ password_to_be_saved_ = false;
+ UpdateBubbleAndIconVisibility();
+}
+
+void ManagePasswordsBubbleUIController::UnblacklistSite() {
+ // TODO(mkwst): Hrm.
vabr (Chromium) 2014/04/29 13:30:12 Please elaborate on "Hrm.", so that if you suddenl
Mike West 2014/04/30 10:39:32 That's a _much_ happier scenario than the typical
+ password_manager::PasswordStore* password_store =
+ GetPasswordStore(web_contents());
+ if (!password_store)
+ return;
+
+ // We're in one of two states: either the user _just_ blacklisted the site
+ // by clicking "Never save" in the pending bubble, or the user is visiting
+ // a blacklisted site.
+ //
+ // Either way, |password_form_map_| has been populated with the relevant
+ // form. We can safely pull it out, send it over to the password store
+ // for removal, and update our internal state.
+ password_store->RemoveLogin(*password_form_map_.begin()->second);
+ autofill_blocked_ = false;
+ UpdateBubbleAndIconVisibility();
}
void ManagePasswordsBubbleUIController::DidNavigateMainFrame(

Powered by Google App Engine
This is Rietveld 408576698