Commit f982e3e4 authored by Vasilii Sukhanov's avatar Vasilii Sukhanov Committed by Commit Bot

Move |generated_password_| inside generation_state_

The PasswordGenerationState incapsulates all the information about the
generation data inside.

Bug: 936011
Change-Id: Ieab7b0dd63741d85bb6ddf88627852899cc93255
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1625115Reviewed-by: default avatarVadym Doroshenko <dvadym@chromium.org>
Commit-Queue: Vasilii Sukhanov <vasilii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662254}
parent b128ac8e
...@@ -427,7 +427,6 @@ void NewPasswordFormManager::PasswordNoLongerGenerated() { ...@@ -427,7 +427,6 @@ void NewPasswordFormManager::PasswordNoLongerGenerated() {
generation_state_->PasswordNoLongerGenerated(); generation_state_->PasswordNoLongerGenerated();
generation_state_.reset(); generation_state_.reset();
generated_password_.clear();
votes_uploader_.set_has_generated_password(false); votes_uploader_.set_has_generated_password(false);
votes_uploader_.set_generated_password_changed(false); votes_uploader_.set_generated_password_changed(false);
metrics_recorder_->SetGeneratedPasswordStatus( metrics_recorder_->SetGeneratedPasswordStatus(
...@@ -497,7 +496,7 @@ bool NewPasswordFormManager::UpdateGeneratedPasswordOnUserInput( ...@@ -497,7 +496,7 @@ bool NewPasswordFormManager::UpdateGeneratedPasswordOnUserInput(
break; break;
} }
} }
base::string16 generated_password = generated_password_; base::string16 generated_password = generation_state_->generated_password();
if (generation_element_ == field_identifier) { if (generation_element_ == field_identifier) {
generated_password = field_value; generated_password = field_value;
form_data_changed = true; form_data_changed = true;
...@@ -538,7 +537,6 @@ std::unique_ptr<NewPasswordFormManager> NewPasswordFormManager::Clone() { ...@@ -538,7 +537,6 @@ std::unique_ptr<NewPasswordFormManager> NewPasswordFormManager::Clone() {
// (3) They are not changed during OnFetchCompleted, triggered at some point // (3) They are not changed during OnFetchCompleted, triggered at some point
// by the // by the
// cloned FormFetcher. // cloned FormFetcher.
result->generated_password_ = generated_password_;
result->votes_uploader_ = votes_uploader_; result->votes_uploader_ = votes_uploader_;
if (parser_.predictions()) if (parser_.predictions())
result->parser_.set_predictions(*parser_.predictions()); result->parser_.set_predictions(*parser_.predictions());
...@@ -877,9 +875,9 @@ void NewPasswordFormManager::CreatePendingCredentials() { ...@@ -877,9 +875,9 @@ void NewPasswordFormManager::CreatePendingCredentials() {
kCorrectedUsernameInForm); kCorrectedUsernameInForm);
} }
} }
pending_credentials_.password_value = generated_password_.empty() pending_credentials_.password_value =
? password_to_save.first HasGeneratedPassword() ? generation_state_->generated_password()
: generated_password_; : password_to_save.first;
pending_credentials_.preferred = true; pending_credentials_.preferred = true;
pending_credentials_.form_has_autofilled_value = pending_credentials_.form_has_autofilled_value =
parsed_submitted_form_->form_has_autofilled_value; parsed_submitted_form_->form_has_autofilled_value;
...@@ -1023,7 +1021,7 @@ void NewPasswordFormManager::PresaveGeneratedPasswordInternal( ...@@ -1023,7 +1021,7 @@ void NewPasswordFormManager::PresaveGeneratedPasswordInternal(
// from the presaved one, then mark that the generated password was changed. // from the presaved one, then mark that the generated password was changed.
// If a user recovers the original generated password, it will be recorded // If a user recovers the original generated password, it will be recorded
// as a password change. // as a password change.
if (generated_password_ != generated_password) { if (generation_state_->generated_password() != generated_password) {
votes_uploader_.set_generated_password_changed(true); votes_uploader_.set_generated_password_changed(true);
metrics_recorder_->SetGeneratedPasswordStatus( metrics_recorder_->SetGeneratedPasswordStatus(
PasswordFormMetricsRecorder::GeneratedPasswordStatus:: PasswordFormMetricsRecorder::GeneratedPasswordStatus::
...@@ -1031,11 +1029,10 @@ void NewPasswordFormManager::PresaveGeneratedPasswordInternal( ...@@ -1031,11 +1029,10 @@ void NewPasswordFormManager::PresaveGeneratedPasswordInternal(
} }
} }
votes_uploader_.set_has_generated_password(true); votes_uploader_.set_has_generated_password(true);
generated_password_ = generated_password;
// Set |password_value| to the generated password in order to ensure that the // Set |password_value| to the generated password in order to ensure that the
// generated password is saved. // generated password is saved.
parsed_form->password_value = generated_password_; parsed_form->password_value = generated_password;
// Clear the username value if there are already saved credentials with // Clear the username value if there are already saved credentials with
// the same username in order to prevent overwriting. // the same username in order to prevent overwriting.
......
...@@ -350,11 +350,6 @@ class NewPasswordFormManager : public PasswordFormManagerInterface, ...@@ -350,11 +350,6 @@ class NewPasswordFormManager : public PasswordFormManagerInterface,
// dependencies on it. // dependencies on it.
bool is_new_login_ = true; bool is_new_login_ = true;
// Contains a generated password, empty if no password generation happened or
// a generated password removed by the user.
// TODO(crbug/936011): move to |generation_state_|.
base::string16 generated_password_;
#if defined(OS_IOS) #if defined(OS_IOS)
// Contains a generated password, empty if no password generation happened or // Contains a generated password, empty if no password generation happened or
// a generated password removed by the user. // a generated password removed by the user.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment