| Index: components/autofill/core/common/password_form.cc
|
| diff --git a/components/autofill/core/common/password_form.cc b/components/autofill/core/common/password_form.cc
|
| index 17892915c65c8f852b94dd2ad7648843be18e296..ee5f8112434b6843a83023cb458f4339335e6c3a 100644
|
| --- a/components/autofill/core/common/password_form.cc
|
| +++ b/components/autofill/core/common/password_form.cc
|
| @@ -66,6 +66,9 @@ void PasswordFormToJSON(const PasswordForm& form,
|
| target->SetString("affiliated_web_realm", form.affiliated_web_realm);
|
| target->SetBoolean("does_look_like_signup_form",
|
| form.does_look_like_signup_form);
|
| + std::ostringstream submission_event_string_stream;
|
| + submission_event_string_stream << form.submission_event;
|
| + target->SetString("submission_event", submission_event_string_stream.str());
|
| }
|
|
|
| } // namespace
|
| @@ -86,7 +89,8 @@ PasswordForm::PasswordForm()
|
| was_parsed_using_autofill_predictions(false),
|
| is_public_suffix_match(false),
|
| is_affiliation_based_match(false),
|
| - does_look_like_signup_form(false) {}
|
| + does_look_like_signup_form(false),
|
| + submission_event(SubmissionIndicatorEvent::NONE) {}
|
|
|
| PasswordForm::PasswordForm(const PasswordForm& other) = default;
|
|
|
| @@ -130,7 +134,8 @@ bool PasswordForm::operator==(const PasswordForm& form) const {
|
| is_public_suffix_match == form.is_public_suffix_match &&
|
| is_affiliation_based_match == form.is_affiliation_based_match &&
|
| affiliated_web_realm == form.affiliated_web_realm &&
|
| - does_look_like_signup_form == form.does_look_like_signup_form;
|
| + does_look_like_signup_form == form.does_look_like_signup_form &&
|
| + submission_event == form.submission_event;
|
| }
|
|
|
| bool PasswordForm::operator!=(const PasswordForm& form) const {
|
| @@ -218,4 +223,30 @@ std::ostream& operator<<(std::ostream& os, PasswordForm* form) {
|
| return os << "&" << *form;
|
| }
|
|
|
| +std::ostream& operator<<(
|
| + std::ostream& os,
|
| + PasswordForm::SubmissionIndicatorEvent submission_event) {
|
| + switch (submission_event) {
|
| + case PasswordForm::SubmissionIndicatorEvent::HTML_FORM_SUBMISSION:
|
| + os << "HTML_FORM_SUBMISSION";
|
| + break;
|
| + case PasswordForm::SubmissionIndicatorEvent::SAME_DOCUMENT_NAVIGATION:
|
| + os << "SAME_DOCUMENT_NAVIGATION";
|
| + break;
|
| + case PasswordForm::SubmissionIndicatorEvent::XHR_SUCCEEDED:
|
| + os << "XHR_SUCCEEDED";
|
| + break;
|
| + case PasswordForm::SubmissionIndicatorEvent::FRAME_DETACHED:
|
| + os << "FRAME_DETACHED";
|
| + break;
|
| + case PasswordForm::SubmissionIndicatorEvent::MANUAL_SAVE:
|
| + os << "MANUAL_SAVE";
|
| + break;
|
| + default:
|
| + os << "NO_SUBMISSION";
|
| + break;
|
| + }
|
| + return os;
|
| +}
|
| +
|
| } // namespace autofill
|
|
|