We've had issues with retaining the email through the different screens of the login flow on browser. This manifested in two ways:
If you returned from 2FA, you had to re-enter your email.
If you returned from the Hint page, you had to re-enter your email.
This fix separates removes clearValues from saveEmailSettings on the LoginEmailService. I then have added manual calls to clear the values later.
It is important to clear these values as soon as we don't need them since directly adding an account will then autofill whatever was left in memory. The functionality to avoid this autofill if we're in addingAccount mode is only included on the call to get the stored email from the LoginEmailService.
📸 Screenshots
⏰ Reminders before review
Contributor guidelines followed
All formatters and local linters executed and passed
Written new unit and / or integration tests where applicable
Protected functional changes with optionality (feature flags)
Used internationalization (i18n) for all UI strings
CI builds passed
Communicated to DevOps any deployment requirements
Updated any necessary documentation (Confluence, contributing docs) or informed the documentation team
🦮 Reviewer guidelines
👍 (:+1:) or similar for great changes
📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
❓ (:question:) for questions
🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion
🎨 (:art:) for suggestions / improvements
❌ (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
🎟️ Tracking
https://bitwarden.atlassian.net/browse/PM-4917 https://bitwarden.atlassian.net/browse/PM-8707 https://bitwarden.atlassian.net/browse/PM-9119
📔 Objective
We've had issues with retaining the email through the different screens of the login flow on browser. This manifested in two ways:
This fix separates removes
clearValues
fromsaveEmailSettings
on theLoginEmailService
. I then have added manual calls to clear the values later. It is important to clear these values as soon as we don't need them since directly adding an account will then autofill whatever was left in memory. The functionality to avoid this autofill if we're inaddingAccount
mode is only included on the call to get the stored email from theLoginEmailService
.📸 Screenshots
⏰ Reminders before review
🦮 Reviewer guidelines
:+1:
) or similar for great changes:memo:
) or ℹ️ (:information_source:
) for notes or general info:question:
) for questions:thinking:
) or 💭 (:thought_balloon:
) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion:art:
) for suggestions / improvements:x:
) or ⚠️ (:warning:
) for more significant problems or concerns needing attention:seedling:
) or ♻️ (:recycle:
) for future improvements or indications of technical debt:pick:
) for minor or nitpick changes