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

Side by Side Diff: chrome/browser/ui/passwords/manage_passwords_ui_controller.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 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 <utility> 7 #include <utility>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "chrome/app/chrome_command_ids.h" 10 #include "chrome/app/chrome_command_ids.h"
(...skipping 27 matching lines...) Expand all
38 namespace { 38 namespace {
39 39
40 password_manager::PasswordStore* GetPasswordStore( 40 password_manager::PasswordStore* GetPasswordStore(
41 content::WebContents* web_contents) { 41 content::WebContents* web_contents) {
42 return PasswordStoreFactory::GetForProfile( 42 return PasswordStoreFactory::GetForProfile(
43 Profile::FromBrowserContext(web_contents->GetBrowserContext()), 43 Profile::FromBrowserContext(web_contents->GetBrowserContext()),
44 ServiceAccessType::EXPLICIT_ACCESS).get(); 44 ServiceAccessType::EXPLICIT_ACCESS).get();
45 } 45 }
46 46
47 std::vector<std::unique_ptr<autofill::PasswordForm>> CopyFormVector( 47 std::vector<std::unique_ptr<autofill::PasswordForm>> CopyFormVector(
48 const ScopedVector<autofill::PasswordForm>& forms) { 48 const std::vector<std::unique_ptr<autofill::PasswordForm>>& forms) {
49 std::vector<std::unique_ptr<autofill::PasswordForm>> result(forms.size()); 49 std::vector<std::unique_ptr<autofill::PasswordForm>> result(forms.size());
50 for (size_t i = 0; i < forms.size(); ++i) 50 for (size_t i = 0; i < forms.size(); ++i)
51 result[i].reset(new autofill::PasswordForm(*forms[i])); 51 result[i].reset(new autofill::PasswordForm(*forms[i]));
52 return result; 52 return result;
53 } 53 }
54 54
55 } // namespace 55 } // namespace
56 56
57 DEFINE_WEB_CONTENTS_USER_DATA_KEY(ManagePasswordsUIController); 57 DEFINE_WEB_CONTENTS_USER_DATA_KEY(ManagePasswordsUIController);
58 58
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 90
91 void ManagePasswordsUIController::OnUpdatePasswordSubmitted( 91 void ManagePasswordsUIController::OnUpdatePasswordSubmitted(
92 std::unique_ptr<PasswordFormManager> form_manager) { 92 std::unique_ptr<PasswordFormManager> form_manager) {
93 DestroyAccountChooser(); 93 DestroyAccountChooser();
94 passwords_data_.OnUpdatePassword(std::move(form_manager)); 94 passwords_data_.OnUpdatePassword(std::move(form_manager));
95 bubble_status_ = SHOULD_POP_UP; 95 bubble_status_ = SHOULD_POP_UP;
96 UpdateBubbleAndIconVisibility(); 96 UpdateBubbleAndIconVisibility();
97 } 97 }
98 98
99 bool ManagePasswordsUIController::OnChooseCredentials( 99 bool ManagePasswordsUIController::OnChooseCredentials(
100 ScopedVector<autofill::PasswordForm> local_credentials, 100 std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials,
101 ScopedVector<autofill::PasswordForm> federated_credentials, 101 std::vector<std::unique_ptr<autofill::PasswordForm>> federated_credentials,
102 const GURL& origin, 102 const GURL& origin,
103 const ManagePasswordsState::CredentialsCallback& callback) { 103 const ManagePasswordsState::CredentialsCallback& callback) {
104 DCHECK(!local_credentials.empty() || !federated_credentials.empty()); 104 DCHECK(!local_credentials.empty() || !federated_credentials.empty());
105 PasswordDialogController::FormsVector locals = 105 PasswordDialogController::FormsVector locals =
106 CopyFormVector(local_credentials); 106 CopyFormVector(local_credentials);
107 PasswordDialogController::FormsVector federations = 107 PasswordDialogController::FormsVector federations =
108 CopyFormVector(federated_credentials); 108 CopyFormVector(federated_credentials);
109 passwords_data_.OnRequestCredentials( 109 passwords_data_.OnRequestCredentials(
110 std::move(local_credentials), std::move(federated_credentials), origin); 110 std::move(local_credentials), std::move(federated_credentials), origin);
111 passwords_data_.set_credentials_callback(callback); 111 passwords_data_.set_credentials_callback(callback);
112 dialog_controller_.reset(new PasswordDialogControllerImpl( 112 dialog_controller_.reset(new PasswordDialogControllerImpl(
113 Profile::FromBrowserContext(web_contents()->GetBrowserContext()), 113 Profile::FromBrowserContext(web_contents()->GetBrowserContext()),
114 this)); 114 this));
115 dialog_controller_->ShowAccountChooser( 115 dialog_controller_->ShowAccountChooser(
116 CreateAccountChooser(dialog_controller_.get()), 116 CreateAccountChooser(dialog_controller_.get()),
117 std::move(locals), std::move(federations)); 117 std::move(locals), std::move(federations));
118 UpdateBubbleAndIconVisibility(); 118 UpdateBubbleAndIconVisibility();
119 return true; 119 return true;
120 } 120 }
121 121
122 void ManagePasswordsUIController::OnAutoSignin( 122 void ManagePasswordsUIController::OnAutoSignin(
123 ScopedVector<autofill::PasswordForm> local_forms, 123 std::vector<std::unique_ptr<autofill::PasswordForm>> local_forms,
124 const GURL& origin) { 124 const GURL& origin) {
125 DCHECK(!local_forms.empty()); 125 DCHECK(!local_forms.empty());
126 DestroyAccountChooser(); 126 DestroyAccountChooser();
127 passwords_data_.OnAutoSignin(std::move(local_forms), origin); 127 passwords_data_.OnAutoSignin(std::move(local_forms), origin);
128 bubble_status_ = SHOULD_POP_UP; 128 bubble_status_ = SHOULD_POP_UP;
129 UpdateBubbleAndIconVisibility(); 129 UpdateBubbleAndIconVisibility();
130 } 130 }
131 131
132 void ManagePasswordsUIController::OnPromptEnableAutoSignin() { 132 void ManagePasswordsUIController::OnPromptEnableAutoSignin() {
133 // Both the account chooser and the previous prompt shouldn't be closed. 133 // Both the account chooser and the previous prompt shouldn't be closed.
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 passwords_data_.form_manager(); 224 passwords_data_.form_manager();
225 return form_manager->pending_credentials(); 225 return form_manager->pending_credentials();
226 } 226 }
227 227
228 bool ManagePasswordsUIController::IsPasswordOverridden() const { 228 bool ManagePasswordsUIController::IsPasswordOverridden() const {
229 const password_manager::PasswordFormManager* form_manager = 229 const password_manager::PasswordFormManager* form_manager =
230 passwords_data_.form_manager(); 230 passwords_data_.form_manager();
231 return form_manager ? form_manager->password_overridden() : false; 231 return form_manager ? form_manager->password_overridden() : false;
232 } 232 }
233 233
234 const std::vector<const autofill::PasswordForm*>& 234 const std::vector<std::unique_ptr<autofill::PasswordForm>>&
235 ManagePasswordsUIController::GetCurrentForms() const { 235 ManagePasswordsUIController::GetCurrentForms() const {
236 return passwords_data_.GetCurrentForms(); 236 return passwords_data_.GetCurrentForms();
237 } 237 }
238 238
239 const std::vector<const autofill::PasswordForm*>& 239 const std::vector<std::unique_ptr<autofill::PasswordForm>>&
240 ManagePasswordsUIController::GetFederatedForms() const { 240 ManagePasswordsUIController::GetFederatedForms() const {
241 return passwords_data_.federated_credentials_forms(); 241 return passwords_data_.federation_providers_forms();
242 } 242 }
243 243
244 password_manager::InteractionsStats* 244 password_manager::InteractionsStats*
245 ManagePasswordsUIController::GetCurrentInteractionStats() const { 245 ManagePasswordsUIController::GetCurrentInteractionStats() const {
246 DCHECK_EQ(password_manager::ui::PENDING_PASSWORD_STATE, GetState()); 246 DCHECK_EQ(password_manager::ui::PENDING_PASSWORD_STATE, GetState());
247 password_manager::PasswordFormManager* form_manager = 247 password_manager::PasswordFormManager* form_manager =
248 passwords_data_.form_manager(); 248 passwords_data_.form_manager();
249 return password_manager::FindStatsByUsername( 249 return password_manager::FindStatsByUsername(
250 form_manager->interactions_stats(), 250 form_manager->interactions_stats(),
251 form_manager->pending_credentials().username_value); 251 form_manager->pending_credentials().username_value);
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE); 453 passwords_data_.TransitionToState(password_manager::ui::MANAGE_STATE);
454 } 454 }
455 } 455 }
456 456
457 void ManagePasswordsUIController::WebContentsDestroyed() { 457 void ManagePasswordsUIController::WebContentsDestroyed() {
458 password_manager::PasswordStore* password_store = 458 password_manager::PasswordStore* password_store =
459 GetPasswordStore(web_contents()); 459 GetPasswordStore(web_contents());
460 if (password_store) 460 if (password_store)
461 password_store->RemoveObserver(this); 461 password_store->RemoveObserver(this);
462 } 462 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698