Skip to content

Conversation

@lmuntaner
Copy link
Collaborator

@lmuntaner lmuntaner commented Nov 5, 2025

Motivation

Improve the user experience during entering the recovery phrase.

Changes

This pull request enhances the recovery phrase entry page by improving user privacy and usability. The main changes introduce per-word and global visibility toggling for recovery phrase inputs, enforce lowercase input, and add a "Clear all" option. These updates help protect sensitive information from shoulder surfing and password managers, while making the input process smoother and more intuitive.

Recovery phrase input privacy and usability improvements:

  • Added a showContent property to each recovery word and a global showAll state to control visibility of word inputs. Inputs are now masked by default (type password), and can be revealed individually (on focus) or all at once via a "Show all"/"Hide all" toggle.
  • Added a "Clear all" button that resets all recovery phrase fields, validity, and visibility, and focuses the first input.
  • Enforced lowercase for all input and pasted recovery words to ensure consistency and prevent accidental mismatches.
  • Added attributes to input fields to discourage password managers from interfering (e.g., data-lpignore, autocomplete="off", etc.).

Tests

Tested locally, see videos attached.

@lmuntaner
Copy link
Collaborator Author

New UX:

Screen.Recording.2025-11-04.at.14.01.04.mov

@lmuntaner lmuntaner requested a review from Copilot November 5, 2025 09:13
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds password masking functionality to the recovery phrase input page to enhance security and privacy when entering recovery words. The implementation includes show/hide toggles for individual inputs and all inputs collectively, along with password manager ignore attributes and lowercase normalization.

Key changes:

  • Added password masking for recovery phrase inputs with per-field and global show/hide controls
  • Implemented lowercase normalization on input to ensure consistent word validation
  • Added password manager ignore attributes to prevent interference
Comments suppressed due to low confidence (1)

src/frontend/src/routes/(new-styling)/recovery-phrase/+page.svelte:138

  • Corrected spelling of 'Uses' to 'Users'.
    // Uses might paste text with multiple spaces, tabs, or newlines between words.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@lmuntaner lmuntaner changed the title Lm input behavior recovery word Add behavior when entering recovery words Nov 5, 2025
@lmuntaner lmuntaner marked this pull request as ready for review November 5, 2025 10:13
@lmuntaner lmuntaner requested a review from sea-snake November 5, 2025 10:13
Copy link
Contributor

@sea-snake sea-snake left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lmuntaner lmuntaner added this pull request to the merge queue Nov 5, 2025
Merged via the queue into main with commit b55be1d Nov 5, 2025
76 checks passed
@lmuntaner lmuntaner deleted the lm-input-behavior-recovery-word branch November 5, 2025 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants