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

Unified Diff: chrome/browser/ui/views/passwords/credentials_selection_view.cc

Issue 2253233005: Change ScopedVector to vector<unique_ptr> in the password's UI code. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: android+ Created 4 years, 4 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/views/passwords/credentials_selection_view.cc
diff --git a/chrome/browser/ui/views/passwords/credentials_selection_view.cc b/chrome/browser/ui/views/passwords/credentials_selection_view.cc
index aebd9e13d3d6d99f092c6a10f4fa75741ef4fa88..54a8f3749e92395a4905219d99c7e16e778abb88 100644
--- a/chrome/browser/ui/views/passwords/credentials_selection_view.cc
+++ b/chrome/browser/ui/views/passwords/credentials_selection_view.cc
@@ -30,12 +30,13 @@ views::Label* GeneratePasswordLabel(const autofill::PasswordForm& form) {
} // namespace
CredentialsSelectionView::CredentialsSelectionView(
- ManagePasswordsBubbleModel* manage_passwords_bubble_model,
- const std::vector<const autofill::PasswordForm*>& password_forms,
- const base::string16& best_matched_username)
- : password_forms_(password_forms),
+ ManagePasswordsBubbleModel* manage_passwords_bubble_model)
+ : password_forms_(&manage_passwords_bubble_model->local_credentials()),
+ default_index_(0),
+ is_default_best_match_(false),
+ is_default_preferred_(false),
action_reported_(false) {
- DCHECK(!password_forms.empty());
+ DCHECK(!password_forms_->empty());
// Layout.
views::GridLayout* layout = new views::GridLayout(this);
@@ -55,8 +56,7 @@ CredentialsSelectionView::CredentialsSelectionView(
layout->StartRowWithPadding(0, column_set_id, 0,
views::kRelatedControlVerticalSpacing);
combobox_ = GenerateUsernameCombobox(
- manage_passwords_bubble_model->local_credentials().get(),
- best_matched_username);
+ manage_passwords_bubble_model->pending_password().username_value);
layout->AddView(combobox_);
views::Label* label =
GeneratePasswordLabel(manage_passwords_bubble_model->pending_password());
@@ -71,24 +71,23 @@ CredentialsSelectionView::~CredentialsSelectionView() {
const autofill::PasswordForm*
CredentialsSelectionView::GetSelectedCredentials() {
- DCHECK_EQ(password_forms_.size(),
+ DCHECK_EQ(password_forms_->size(),
static_cast<size_t>(combobox_->model()->GetItemCount()));
ReportUserActionOnce(false, combobox_->selected_index());
- return password_forms_[combobox_->selected_index()];
+ return &password_forms_->at(combobox_->selected_index());
}
views::Combobox* CredentialsSelectionView::GenerateUsernameCombobox(
- const std::vector<const autofill::PasswordForm*>& forms,
const base::string16& best_matched_username) {
std::vector<base::string16> usernames;
- size_t best_matched_username_index = forms.size();
- size_t preferred_form_index = forms.size();
- for (size_t index = 0; index < forms.size(); ++index) {
- usernames.push_back(forms[index]->username_value);
- if (forms[index]->username_value == best_matched_username) {
+ size_t best_matched_username_index = password_forms_->size();
+ size_t preferred_form_index = password_forms_->size();
+ for (size_t index = 0; index < password_forms_->size(); ++index) {
+ usernames.push_back(password_forms_->at(index).username_value);
+ if (password_forms_->at(index).username_value == best_matched_username) {
best_matched_username_index = index;
}
- if (forms[index]->preferred) {
+ if (password_forms_->at(index).preferred) {
preferred_form_index = index;
}
}
@@ -96,15 +95,11 @@ views::Combobox* CredentialsSelectionView::GenerateUsernameCombobox(
views::Combobox* combobox =
new views::Combobox(new ui::SimpleComboboxModel(usernames));
- default_index_ = 0;
- is_default_best_match_ = false;
- is_default_preferred_ = false;
-
- if (best_matched_username_index < forms.size()) {
+ if (best_matched_username_index < password_forms_->size()) {
is_default_best_match_ = true;
default_index_ = best_matched_username_index;
combobox->SetSelectedIndex(best_matched_username_index);
- } else if (preferred_form_index < forms.size()) {
+ } else if (preferred_form_index < password_forms_->size()) {
is_default_preferred_ = true;
default_index_ = preferred_form_index;
combobox->SetSelectedIndex(preferred_form_index);

Powered by Google App Engine
This is Rietveld 408576698