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

Unified Diff: ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm

Issue 2617243002: Remove ScopedVector from ios/. (Closed)
Patch Set: rebase Created 3 years, 11 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: ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm
diff --git a/ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm b/ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm
index 32a5317bdeb0c01e370b4a1caa066b8ecfd89b27..3f27c1d2e10d259eefa0419257ce9f851b670334 100644
--- a/ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm
+++ b/ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.mm
@@ -5,6 +5,7 @@
#import "ios/chrome/browser/ui/settings/save_passwords_collection_view_controller.h"
#include <memory>
+#include <vector>
#include "base/ios/ios_util.h"
#import "base/ios/weak_nsobject.h"
@@ -12,7 +13,7 @@
#include "base/mac/foundation_util.h"
#import "base/mac/objc_property_releaser.h"
#import "base/mac/scoped_nsobject.h"
-#include "base/memory/scoped_vector.h"
+#include "base/memory/ptr_util.h"
#include "base/numerics/safe_conversions.h"
#include "base/strings/sys_string_conversions.h"
#include "base/strings/utf_string_conversions.h"
@@ -144,13 +145,13 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
std::unique_ptr<password_manager::SavePasswordsConsumer>
blacklistPasswordsConsumer_;
// The list of the user's saved passwords.
- ScopedVector<autofill::PasswordForm> savedForms_;
+ std::vector<std::unique_ptr<autofill::PasswordForm>> savedForms_;
// The list of the user's blacklisted sites.
- ScopedVector<autofill::PasswordForm> blacklistedForms_;
+ std::vector<std::unique_ptr<autofill::PasswordForm>> blacklistedForms_;
// Deletion of password being asynchronous, and the method taking a reference
// to the PasswordForm, the PasswordForm must outlive the calls to
// RemoveLogin. This vector will ensure this.
- ScopedVector<autofill::PasswordForm> deletedForms_;
+ std::vector<std::unique_ptr<autofill::PasswordForm>> deletedForms_;
// The current Chrome browser state.
ios::ChromeBrowserState* browserState_;
// Object storing the time of the previous successful re-authentication.
@@ -235,9 +236,8 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
l10n_util::GetNSString(IDS_PASSWORD_MANAGER_SHOW_PASSWORDS_TAB_TITLE);
[model setHeader:headerItem
forSectionWithIdentifier:SectionIdentifierSavedPasswords];
- for (size_t i = 0; i < savedForms_.size(); ++i) {
- autofill::PasswordForm* form = savedForms_[i];
- [model addItem:[self savedFormItemWithForm:form]
+ for (const auto& form : savedForms_) {
+ [model addItem:[self savedFormItemWithForm:form.get()]
toSectionWithIdentifier:SectionIdentifierSavedPasswords];
}
}
@@ -249,9 +249,8 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
l10n_util::GetNSString(IDS_PASSWORD_MANAGER_EXCEPTIONS_TAB_TITLE);
[model setHeader:headerItem
forSectionWithIdentifier:SectionIdentifierBlacklist];
- for (size_t i = 0; i < blacklistedForms_.size(); ++i) {
- autofill::PasswordForm* form = blacklistedForms_[i];
- [model addItem:[self blacklistedFormItemWithForm:form]
+ for (const auto& form : blacklistedForms_) {
+ [model addItem:[self blacklistedFormItemWithForm:form.get()]
toSectionWithIdentifier:SectionIdentifierBlacklist];
}
}
@@ -447,11 +446,11 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
(const std::vector<std::unique_ptr<autofill::PasswordForm>>&)result {
for (auto it = result.begin(); it != result.end(); ++it) {
// PasswordForm is needed when user wants to delete the site/password.
- autofill::PasswordForm* form = new autofill::PasswordForm(**it);
+ auto form = base::MakeUnique<autofill::PasswordForm>(**it);
if (form->blacklisted_by_user)
- blacklistedForms_.push_back(form);
+ blacklistedForms_.push_back(std::move(form));
else
- savedForms_.push_back(form);
+ savedForms_.push_back(std::move(form));
}
[self updateEditButton];
@@ -484,7 +483,7 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
SectionIdentifierSavedPasswords);
if (experimental_flags::IsViewCopyPasswordsEnabled()) {
DCHECK_LT(base::checked_cast<size_t>(indexPath.item), savedForms_.size());
- autofill::PasswordForm* form = savedForms_[indexPath.item];
+ autofill::PasswordForm* form = savedForms_[indexPath.item].get();
NSString* username = base::SysUTF16ToNSString(form->username_value);
NSString* password = base::SysUTF16ToNSString(form->password_value);
NSString* origin =
@@ -531,13 +530,13 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
unsigned int formIndex = (unsigned int)indexPath.item;
// Adjust index to account for deleted items.
formIndex -= blacklisted ? blacklistedDeleted : passwordsDeleted;
- ScopedVector<autofill::PasswordForm>& forms =
- blacklisted ? blacklistedForms_ : savedForms_;
+ auto& forms = blacklisted ? blacklistedForms_ : savedForms_;
DCHECK_LT(formIndex, forms.size());
auto formIterator = forms.begin() + formIndex;
- passwordStore_->RemoveLogin(**formIterator);
- deletedForms_.push_back(*formIterator);
- forms.weak_erase(formIterator);
+ std::unique_ptr<autofill::PasswordForm> form = std::move(*formIterator);
+ forms.erase(formIterator);
+ passwordStore_->RemoveLogin(*form);
+ deletedForms_.push_back(std::move(form));
if (blacklisted) {
++blacklistedDeleted;
} else {
@@ -597,7 +596,7 @@ void SavePasswordsConsumer::OnGetPasswordStoreResults(
passwordStore_->RemoveLogin(form);
for (auto it = savedForms_.begin(); it != savedForms_.end(); ++it) {
if (**it == form) {
- savedForms_.weak_erase(it);
+ savedForms_.erase(it);
return;
}
}
« no previous file with comments | « ios/chrome/browser/ui/bookmarks/bookmark_utils_ios_unittest.mm ('k') | ios/chrome/browser/ui/webui/crashes_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698