diff --git a/apps/browser/src/autofill/services/inline-menu-field-qualification.service.spec.ts b/apps/browser/src/autofill/services/inline-menu-field-qualification.service.spec.ts index 6298cfaf7c1..ae39c0cbf01 100644 --- a/apps/browser/src/autofill/services/inline-menu-field-qualification.service.spec.ts +++ b/apps/browser/src/autofill/services/inline-menu-field-qualification.service.spec.ts @@ -605,7 +605,7 @@ describe("InlineMenuFieldQualificationService", () => { }); describe("a valid username field", () => { - ["username", "email"].forEach((autoCompleteType) => { + ["username", "email", "webauthn"].forEach((autoCompleteType) => { it(`has a ${autoCompleteType} 'autoCompleteType' value`, () => { const field = mock({ type: "text", diff --git a/apps/browser/src/autofill/services/inline-menu-field-qualification.service.ts b/apps/browser/src/autofill/services/inline-menu-field-qualification.service.ts index ed8e41df8ba..e6d902390a7 100644 --- a/apps/browser/src/autofill/services/inline-menu-field-qualification.service.ts +++ b/apps/browser/src/autofill/services/inline-menu-field-qualification.service.ts @@ -242,6 +242,15 @@ export class InlineMenuFieldQualificationService return this.isPasswordFieldForLoginForm(field, pageDetails); } + // If the field is a WebAuthn field assume it is a login field. + if (this.fieldContainsAutocompleteValues(field, new Set([this.webAuthnAutocompleteValue]))) { + const hasWebAuthnField = pageDetails.fields.some((f) => this.isPasswordField(f)); + + if (hasWebAuthnField) { + return true; + } + } + const isUsernameField = this.isUsernameField(field); if (!isUsernameField) { return false;