Skip to content

[Bugfix] Back Navigation in Seed Entry Views#900

Open
PROWLERx15 wants to merge 4 commits intoSeedSigner:devfrom
PROWLERx15:fix-seed-views
Open

[Bugfix] Back Navigation in Seed Entry Views#900
PROWLERx15 wants to merge 4 commits intoSeedSigner:devfrom
PROWLERx15:fix-seed-views

Conversation

@PROWLERx15
Copy link
Copy Markdown
Contributor

@PROWLERx15 PROWLERx15 commented Apr 6, 2026

Description

Problem or Issue being addressed

Pressing BACK on the first word of seed entry takes you straight to the Main Menu instead of going back to the Seeds Menu where you came from.

Current behavior:
Seeds Menu → Enter 12-word seed → Back → Main Menu
Seeds Menu → Enter 24-word seed → Back → Main Menu

Expected behavior:
Seeds Menu → Enter 12-word seed → Back → Seeds Menu
Seeds Menu → Enter 24-word seed → Back → Seeds Menu

Solution

SeedMnemonicEntryView: When pressing BACK on the first word, the old code hard-coded a jump to MainMenuView. Changed it to use BackStackView instead, so it naturally returns to wherever the user came from, either LoadSeedView (the normal "enter a seed" path) or SeedSelectSeedView (when entering a seed mid-flow, like during sign message).
The pending mnemonic is still properly discarded.

Additional Information

Screenshots

No UI changes, only navigation logic.

This pull request is categorized as a:

  • New feature
  • Bug fix
  • Code refactor
  • Documentation
  • Other

Checklist

I ran pytest locally

  • All tests passed before submitting the PR
  • I couldn't run the tests
  • N/A

I included screenshots of any new or modified screens

Should be part of the PR description above.

  • Yes
  • No
  • N/A

I added or updated tests

Any new or altered functionality should be covered in a unit test. Any new or updated sequences require FlowTests.

  • Yes
  • No, I’m a fool
  • N/A

I tested this PR hands-on on the following platform(s):


I have reviewed these notes:

  • Keep your changes limited in scope.
  • If you uncover other issues or improvements along the way, ideally submit those as a separate PR.
  • The more complicated the PR, the harder it is to review, test, and merge.
  • We appreciate your efforts, but we're a small team of volunteers so PR review can be a very slow process.
  • Please only "@" mention a contributor if their input is truly needed to enable further progress.
  • I understand

Thank you! Please join our Devs' Telegram group to get more involved.

@newtonick newtonick added the bug Something isn't working label Apr 7, 2026
@newtonick newtonick added this to the 0.8.7 milestone Apr 7, 2026
@newtonick newtonick moved this to 0.8.7 Needs Code Review in @SeedSigner Development Board Apr 7, 2026
Copy link
Copy Markdown
Contributor

@Chaitanya-Keyal Chaitanya-Keyal left a comment

Choose a reason for hiding this comment

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

Thanks for the PR, this is a great catch!

However, I was unable to reproduce the issue you mention with SeedFinalizeView; the back button is explicitly disabled for SeedFinalizeScreen, so RET_CODE__BACK_BUTTON should not be reachable there in normal flow:

self.show_back_button = False

Given that, I think we should rather just remove the back button elif branch in SeedFinalizeView (and any test that relies on that unreachable path), and keep the mnemonic-entry fix/tests which address the real issue.

If you can share a concrete repro path or traceback for the finalize crash, happy to take another look.

@PROWLERx15
Copy link
Copy Markdown
Contributor Author

Thanks for the PR, this is a great catch!

However, I was unable to reproduce the issue you mention with SeedFinalizeView; the back button is explicitly disabled for SeedFinalizeScreen, so RET_CODE__BACK_BUTTON should not be reachable there in normal flow:

self.show_back_button = False

Given that, I think we should rather just remove the back button elif branch in SeedFinalizeView (and any test that relies on that unreachable path), and keep the mnemonic-entry fix/tests which address the real issue.

If you can share a concrete repro path or traceback for the finalize crash, happy to take another look.

You're right, the back button is disabled on SeedFinalizeScreen so that branch was dead code. I've removed it along with the test. Thanks for catching that :)

Copy link
Copy Markdown
Contributor

@Chaitanya-Keyal Chaitanya-Keyal left a comment

Choose a reason for hiding this comment

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

Tested ACK at ef7d371

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

Status: 0.8.7 Needs Code Review

Development

Successfully merging this pull request may close these issues.

3 participants