| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_bubble_model.h" | 5 #include "chrome/browser/ui/passwords/manage_passwords_bubble_model.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" |
| 9 #include "chrome/browser/password_manager/password_store_factory.h" | 9 #include "chrome/browser/password_manager/password_store_factory.h" |
| 10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 content::WebContents* web_contents) | 89 content::WebContents* web_contents) |
| 90 : content::WebContentsObserver(web_contents), | 90 : content::WebContentsObserver(web_contents), |
| 91 never_save_passwords_(false), | 91 never_save_passwords_(false), |
| 92 display_disposition_(metrics_util::AUTOMATIC_WITH_PASSWORD_PENDING), | 92 display_disposition_(metrics_util::AUTOMATIC_WITH_PASSWORD_PENDING), |
| 93 dismissal_reason_(metrics_util::NOT_DISPLAYED) { | 93 dismissal_reason_(metrics_util::NOT_DISPLAYED) { |
| 94 ManagePasswordsUIController* controller = | 94 ManagePasswordsUIController* controller = |
| 95 ManagePasswordsUIController::FromWebContents(web_contents); | 95 ManagePasswordsUIController::FromWebContents(web_contents); |
| 96 | 96 |
| 97 origin_ = controller->origin(); | 97 origin_ = controller->origin(); |
| 98 state_ = controller->state(); | 98 state_ = controller->state(); |
| 99 password_overriden_ = controller->PasswordOverriden(); |
| 99 if (state_ == password_manager::ui::PENDING_PASSWORD_STATE || | 100 if (state_ == password_manager::ui::PENDING_PASSWORD_STATE || |
| 100 state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE) { | 101 state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE) { |
| 101 pending_password_ = controller->PendingPassword(); | 102 pending_password_ = controller->PendingPassword(); |
| 102 local_credentials_ = DeepCopyForms(controller->GetCurrentForms()); | 103 local_credentials_ = DeepCopyForms(controller->GetCurrentForms()); |
| 103 } else if (state_ == password_manager::ui::CONFIRMATION_STATE) { | 104 } else if (state_ == password_manager::ui::CONFIRMATION_STATE) { |
| 104 // We don't need anything. | 105 // We don't need anything. |
| 105 } else if (state_ == password_manager::ui::CREDENTIAL_REQUEST_STATE) { | 106 } else if (state_ == password_manager::ui::CREDENTIAL_REQUEST_STATE) { |
| 106 local_credentials_ = DeepCopyForms(controller->GetCurrentForms()); | 107 local_credentials_ = DeepCopyForms(controller->GetCurrentForms()); |
| 107 federated_credentials_ = DeepCopyForms(controller->GetFederatedForms()); | 108 federated_credentials_ = DeepCopyForms(controller->GetFederatedForms()); |
| 108 } else if (state_ == password_manager::ui::AUTO_SIGNIN_STATE) { | 109 } else if (state_ == password_manager::ui::AUTO_SIGNIN_STATE) { |
| (...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 329 return GetProfileFromWebContents(web_contents()); | 330 return GetProfileFromWebContents(web_contents()); |
| 330 } | 331 } |
| 331 | 332 |
| 332 bool ManagePasswordsBubbleModel::IsNewUIActive() const { | 333 bool ManagePasswordsBubbleModel::IsNewUIActive() const { |
| 333 return base::CommandLine::ForCurrentProcess()->HasSwitch( | 334 return base::CommandLine::ForCurrentProcess()->HasSwitch( |
| 334 switches::kEnableCredentialManagerAPI); | 335 switches::kEnableCredentialManagerAPI); |
| 335 } | 336 } |
| 336 | 337 |
| 337 bool ManagePasswordsBubbleModel::ShouldShowMultipleAccountUpdateUI() const { | 338 bool ManagePasswordsBubbleModel::ShouldShowMultipleAccountUpdateUI() const { |
| 338 return state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE && | 339 return state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE && |
| 339 local_credentials_.size() > 1; | 340 local_credentials_.size() > 1 && !password_overriden_; |
| 340 } | 341 } |
| 341 | 342 |
| 342 // static | 343 // static |
| 343 int ManagePasswordsBubbleModel::UsernameFieldWidth() { | 344 int ManagePasswordsBubbleModel::UsernameFieldWidth() { |
| 344 return GetFieldWidth(USERNAME_FIELD); | 345 return GetFieldWidth(USERNAME_FIELD); |
| 345 } | 346 } |
| 346 | 347 |
| 347 // static | 348 // static |
| 348 int ManagePasswordsBubbleModel::PasswordFieldWidth() { | 349 int ManagePasswordsBubbleModel::PasswordFieldWidth() { |
| 349 return GetFieldWidth(PASSWORD_FIELD); | 350 return GetFieldWidth(PASSWORD_FIELD); |
| 350 } | 351 } |
| 351 | 352 |
| 352 void ManagePasswordsBubbleModel::UpdatePendingStateTitle() { | 353 void ManagePasswordsBubbleModel::UpdatePendingStateTitle() { |
| 353 title_brand_link_range_ = gfx::Range(); | 354 title_brand_link_range_ = gfx::Range(); |
| 354 if (never_save_passwords_) { | 355 if (never_save_passwords_) { |
| 355 title_ = l10n_util::GetStringUTF16( | 356 title_ = l10n_util::GetStringUTF16( |
| 356 IDS_MANAGE_PASSWORDS_BLACKLIST_CONFIRMATION_TITLE); | 357 IDS_MANAGE_PASSWORDS_BLACKLIST_CONFIRMATION_TITLE); |
| 357 } else { | 358 } else { |
| 358 GetSavePasswordDialogTitleTextAndLinkRange( | 359 GetSavePasswordDialogTitleTextAndLinkRange( |
| 359 web_contents()->GetVisibleURL(), origin(), | 360 web_contents()->GetVisibleURL(), origin(), |
| 360 IsSmartLockBrandingEnabled(GetProfile()), | 361 IsSmartLockBrandingEnabled(GetProfile()), |
| 361 state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE, &title_, | 362 state_ == password_manager::ui::PENDING_PASSWORD_UPDATE_STATE, &title_, |
| 362 &title_brand_link_range_); | 363 &title_brand_link_range_); |
| 363 } | 364 } |
| 364 } | 365 } |
| OLD | NEW |