| Index: chrome/browser/password_manager/account_chooser_dialog_android.cc
|
| diff --git a/chrome/browser/password_manager/account_chooser_dialog_android.cc b/chrome/browser/password_manager/account_chooser_dialog_android.cc
|
| index b02db3f9e3e32ca04a6765cac8d2a082f946e075..54a1638c25ee3aa6e10855d9bce04943238ed2e1 100644
|
| --- a/chrome/browser/password_manager/account_chooser_dialog_android.cc
|
| +++ b/chrome/browser/password_manager/account_chooser_dialog_android.cc
|
| @@ -39,11 +39,11 @@ namespace {
|
| void AddElementsToJavaCredentialArray(
|
| JNIEnv* env,
|
| ScopedJavaLocalRef<jobjectArray> java_credentials_array,
|
| - const std::vector<const autofill::PasswordForm*>& password_forms,
|
| + const std::vector<std::unique_ptr<autofill::PasswordForm>>& password_forms,
|
| password_manager::CredentialType type,
|
| int indexStart = 0) {
|
| int index = indexStart;
|
| - for (auto* password_form : password_forms) {
|
| + for (const auto& password_form : password_forms) {
|
| ScopedJavaLocalRef<jobject> java_credential = CreateNativeCredential(
|
| env, *password_form, index - indexStart, static_cast<int>(type));
|
| env->SetObjectArrayElement(java_credentials_array.obj(), index,
|
| @@ -92,10 +92,10 @@ void AvatarFetcherAndroid::OnFetchComplete(const GURL& url,
|
|
|
| void FetchAvatars(
|
| const base::android::ScopedJavaGlobalRef<jobject>& java_dialog,
|
| - const std::vector<const autofill::PasswordForm*>& password_forms,
|
| + const std::vector<std::unique_ptr<autofill::PasswordForm>>& password_forms,
|
| int index,
|
| net::URLRequestContextGetter* request_context) {
|
| - for (auto* password_form : password_forms) {
|
| + for (const auto& password_form : password_forms) {
|
| if (!password_form->icon_url.is_valid())
|
| continue;
|
| // Fetcher deletes itself once fetching is finished.
|
| @@ -110,8 +110,8 @@ void FetchAvatars(
|
|
|
| AccountChooserDialogAndroid::AccountChooserDialogAndroid(
|
| content::WebContents* web_contents,
|
| - ScopedVector<autofill::PasswordForm> local_credentials,
|
| - ScopedVector<autofill::PasswordForm> federated_credentials,
|
| + std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials,
|
| + std::vector<std::unique_ptr<autofill::PasswordForm>> federated_credentials,
|
| const GURL& origin,
|
| const ManagePasswordsState::CredentialsCallback& callback)
|
| : content::WebContentsObserver(web_contents),
|
| @@ -139,14 +139,14 @@ void AccountChooserDialogAndroid::ShowDialog() {
|
| &title, &title_link_range);
|
| gfx::NativeWindow native_window = web_contents_->GetTopLevelNativeWindow();
|
| size_t credential_array_size =
|
| - local_credentials_forms().size() + federated_credentials_forms().size();
|
| + local_credentials_forms().size() + federation_providers_forms().size();
|
| ScopedJavaLocalRef<jobjectArray> java_credentials_array =
|
| CreateNativeCredentialArray(env, credential_array_size);
|
| AddElementsToJavaCredentialArray(
|
| env, java_credentials_array, local_credentials_forms(),
|
| password_manager::CredentialType::CREDENTIAL_TYPE_PASSWORD);
|
| AddElementsToJavaCredentialArray(
|
| - env, java_credentials_array, federated_credentials_forms(),
|
| + env, java_credentials_array, federation_providers_forms(),
|
| password_manager::CredentialType::CREDENTIAL_TYPE_FEDERATED,
|
| local_credentials_forms().size());
|
| base::android::ScopedJavaGlobalRef<jobject> java_dialog_global;
|
| @@ -167,7 +167,7 @@ void AccountChooserDialogAndroid::ShowDialog() {
|
| Profile::FromBrowserContext(web_contents_->GetBrowserContext())
|
| ->GetRequestContext();
|
| FetchAvatars(dialog_jobject_, local_credentials_forms(), 0, request_context);
|
| - FetchAvatars(dialog_jobject_, federated_credentials_forms(),
|
| + FetchAvatars(dialog_jobject_, federation_providers_forms(),
|
| local_credentials_forms().size(), request_context);
|
| }
|
|
|
| @@ -221,14 +221,14 @@ void AccountChooserDialogAndroid::OnDialogCancel() {
|
| false /* signin_button_clicked */);
|
| }
|
|
|
| -const std::vector<const autofill::PasswordForm*>&
|
| +const std::vector<std::unique_ptr<autofill::PasswordForm>>&
|
| AccountChooserDialogAndroid::local_credentials_forms() const {
|
| return passwords_data_.GetCurrentForms();
|
| }
|
|
|
| -const std::vector<const autofill::PasswordForm*>&
|
| -AccountChooserDialogAndroid::federated_credentials_forms() const {
|
| - return passwords_data_.federated_credentials_forms();
|
| +const std::vector<std::unique_ptr<autofill::PasswordForm>>&
|
| +AccountChooserDialogAndroid::federation_providers_forms() const {
|
| + return passwords_data_.federation_providers_forms();
|
| }
|
|
|
| void AccountChooserDialogAndroid::ChooseCredential(
|
| @@ -247,9 +247,9 @@ void AccountChooserDialogAndroid::ChooseCredential(
|
| const auto& credentials_forms =
|
| (type == CredentialType::CREDENTIAL_TYPE_PASSWORD)
|
| ? local_credentials_forms()
|
| - : federated_credentials_forms();
|
| + : federation_providers_forms();
|
| if (index < credentials_forms.size()) {
|
| - passwords_data_.ChooseCredential(credentials_forms[index]);
|
| + passwords_data_.ChooseCredential(credentials_forms[index].get());
|
| }
|
| }
|
|
|
|
|