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

Side by Side Diff: chrome/browser/ui/passwords/manage_passwords_ui_controller.cc

Issue 1151373006: Update Confirmation UI for saved password change (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed unit test compilation error, updated comments Created 5 years, 5 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 unified diff | Download patch
OLDNEW
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/ui/passwords/manage_passwords_ui_controller.h" 5 #include "chrome/browser/ui/passwords/manage_passwords_ui_controller.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "chrome/app/chrome_command_ids.h" 8 #include "chrome/app/chrome_command_ids.h"
9 #include "chrome/browser/browsing_data/browsing_data_helper.h" 9 #include "chrome/browser/browsing_data/browsing_data_helper.h"
10 #include "chrome/browser/password_manager/chrome_password_manager_client.h" 10 #include "chrome/browser/password_manager/chrome_password_manager_client.h"
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 #endif 198 #endif
199 } 199 }
200 200
201 void ManagePasswordsUIController::SavePassword() { 201 void ManagePasswordsUIController::SavePassword() {
202 DCHECK(PasswordPendingUserDecision()); 202 DCHECK(PasswordPendingUserDecision());
203 SavePasswordInternal(); 203 SavePasswordInternal();
204 passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE); 204 passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE);
205 UpdateBubbleAndIconVisibility(); 205 UpdateBubbleAndIconVisibility();
206 } 206 }
207 207
208 void ManagePasswordsUIController::UpdatePassword(
209 const autofill::PasswordForm& password_form) {
210 DCHECK(PasswordPendingUserDecision() ||
vabr (Chromium) 2015/07/24 08:24:28 Cant this method be called when state() == passwor
dvadym 2015/07/24 16:42:39 Thanks, no, it can't, it was left from the previou
211 state() == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE);
212 UpdatePasswordInternal(password_form);
213 passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE);
214 UpdateBubbleAndIconVisibility();
215 }
216
208 void ManagePasswordsUIController::ChooseCredential( 217 void ManagePasswordsUIController::ChooseCredential(
209 const autofill::PasswordForm& form, 218 const autofill::PasswordForm& form,
210 password_manager::CredentialType credential_type) { 219 password_manager::CredentialType credential_type) {
211 DCHECK_EQ(password_manager::ui::CREDENTIAL_REQUEST_STATE, state()); 220 DCHECK_EQ(password_manager::ui::CREDENTIAL_REQUEST_STATE, state());
212 DCHECK(!passwords_data_.credentials_callback().is_null()); 221 DCHECK(!passwords_data_.credentials_callback().is_null());
213 222
214 // Here, |credential_type| refers to whether the credential was originally 223 // Here, |credential_type| refers to whether the credential was originally
215 // passed into ::OnChooseCredentials as part of the |local_credentials| or 224 // passed into ::OnChooseCredentials as part of the |local_credentials| or
216 // |federated_credentials| lists (e.g. whether it is an existing credential 225 // |federated_credentials| lists (e.g. whether it is an existing credential
217 // saved for this origin, or whether we should synthesize a new 226 // saved for this origin, or whether we should synthesize a new
(...skipping 23 matching lines...) Expand all
241 password_manager::CredentialInfo info = 250 password_manager::CredentialInfo info =
242 password_manager::CredentialInfo(form, type_to_return); 251 password_manager::CredentialInfo(form, type_to_return);
243 passwords_data_.credentials_callback().Run(info); 252 passwords_data_.credentials_callback().Run(info);
244 passwords_data_.set_credentials_callback( 253 passwords_data_.set_credentials_callback(
245 ManagePasswordsState::CredentialsCallback()); 254 ManagePasswordsState::CredentialsCallback());
246 } 255 }
247 256
248 void ManagePasswordsUIController::SavePasswordInternal() { 257 void ManagePasswordsUIController::SavePasswordInternal() {
249 password_manager::PasswordFormManager* form_manager = 258 password_manager::PasswordFormManager* form_manager =
250 passwords_data_.form_manager(); 259 passwords_data_.form_manager();
251 DCHECK(form_manager);
252 form_manager->Save(); 260 form_manager->Save();
253 } 261 }
254 262
263 void ManagePasswordsUIController::UpdatePasswordInternal(
264 const autofill::PasswordForm& password_form) {
265 password_manager::PasswordFormManager* form_manager =
266 passwords_data_.form_manager();
267 form_manager->Update(password_form);
268 }
269
255 void ManagePasswordsUIController::NeverSavePassword() { 270 void ManagePasswordsUIController::NeverSavePassword() {
256 DCHECK(PasswordPendingUserDecision()); 271 DCHECK(PasswordPendingUserDecision());
vabr (Chromium) 2015/07/24 08:24:28 Here it can also happen that state() == password_m
dvadym 2015/07/24 16:42:39 No it can't, I haven't added "Never for this site"
257 NeverSavePasswordInternal(); 272 NeverSavePasswordInternal();
258 passwords_data_.TransitionToState(password_manager::ui::BLACKLIST_STATE); 273 passwords_data_.TransitionToState(password_manager::ui::BLACKLIST_STATE);
259 UpdateBubbleAndIconVisibility(); 274 UpdateBubbleAndIconVisibility();
260 } 275 }
261 276
262 void ManagePasswordsUIController::NeverSavePasswordInternal() { 277 void ManagePasswordsUIController::NeverSavePasswordInternal() {
263 password_manager::PasswordFormManager* form_manager = 278 password_manager::PasswordFormManager* form_manager =
264 passwords_data_.form_manager(); 279 passwords_data_.form_manager();
265 DCHECK(form_manager); 280 DCHECK(form_manager);
266 form_manager->PermanentlyBlacklist(); 281 form_manager->PermanentlyBlacklist();
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 329
315 void ManagePasswordsUIController::WasHidden() { 330 void ManagePasswordsUIController::WasHidden() {
316 #if !defined(OS_ANDROID) 331 #if !defined(OS_ANDROID)
317 TabDialogs::FromWebContents(web_contents())->HideManagePasswordsBubble(); 332 TabDialogs::FromWebContents(web_contents())->HideManagePasswordsBubble();
318 #endif 333 #endif
319 } 334 }
320 335
321 const autofill::PasswordForm& ManagePasswordsUIController:: 336 const autofill::PasswordForm& ManagePasswordsUIController::
322 PendingPassword() const { 337 PendingPassword() const {
323 DCHECK(state() == password_manager::ui::PENDING_PASSWORD_STATE || 338 DCHECK(state() == password_manager::ui::PENDING_PASSWORD_STATE ||
324 state() == password_manager::ui::CONFIRMATION_STATE) << state(); 339 state() == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE ||
340 state() == password_manager::ui::CONFIRMATION_STATE)
341 << state();
325 password_manager::PasswordFormManager* form_manager = 342 password_manager::PasswordFormManager* form_manager =
326 passwords_data_.form_manager(); 343 passwords_data_.form_manager();
327 DCHECK(form_manager); 344 DCHECK(form_manager);
328 return form_manager->pending_credentials(); 345 return form_manager->pending_credentials();
329 } 346 }
330 347
331 void ManagePasswordsUIController::UpdateIconAndBubbleState( 348 void ManagePasswordsUIController::UpdateIconAndBubbleState(
332 ManagePasswordsIcon* icon) { 349 ManagePasswordsIcon* icon) {
333 if (should_pop_up_bubble_) { 350 if (should_pop_up_bubble_) {
334 // We must display the icon before showing the bubble, as the bubble would 351 // We must display the icon before showing the bubble, as the bubble would
(...skipping 29 matching lines...) Expand all
364 updater->ExecuteCommand(IDC_MANAGE_PASSWORDS_FOR_PAGE); 381 updater->ExecuteCommand(IDC_MANAGE_PASSWORDS_FOR_PAGE);
365 #endif 382 #endif
366 } 383 }
367 384
368 void ManagePasswordsUIController::WebContentsDestroyed() { 385 void ManagePasswordsUIController::WebContentsDestroyed() {
369 password_manager::PasswordStore* password_store = 386 password_manager::PasswordStore* password_store =
370 GetPasswordStore(web_contents()); 387 GetPasswordStore(web_contents());
371 if (password_store) 388 if (password_store)
372 password_store->RemoveObserver(this); 389 password_store->RemoveObserver(this);
373 } 390 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698