Improvements & fixes
-
Recover correctly after chain reorgs: Fixed spent UTXOs remaining marked as spent after a chain reorganization, so wallet balances and transaction state are restored correctly.
-
QR codes for generation addresses: Generation addresses can now be displayed as QR codes.
-
Inline recipient address validation: Recipient addresses are validated as they are entered, with clear inline errors and detected key-type information for valid addresses.
-
Safer contact addresses: Adding or editing a contact now validates the address before it can be saved.
-
Retry failed first-run onboarding: Fixed onboarding so a failed account-creation attempt can be retried cleanly.
-
Atomic password changes: Password changes now complete atomically, preventing partially updated wallet credentials if an operation fails.
-
More reliable contact loading: The Contacts page now loads contacts when opened and handles failed loads without unnecessarily discarding the existing list.
-
Reliable contact creation: Adding a contact now waits for the database operation to complete before reporting success, with failures keeping the dialog open.
-
Prevent reopening completed onboarding: Completed account creation and import wizards can no longer be navigated back into in a way that could accidentally create another account or reconfigure the wallet.
-
Reset the Add Contact form: The contact form is cleared when the dialog closes so each new contact starts with a clean form.
-
Clear coin selection when switching accounts: Changing accounts now clears the previous account's selected coins to prevent accidental cross-account selections.
-
Reject invalid sync start heights: Wallet import and resync now reject start heights above the current chain tip, provide an inline error, and prevent submission while the tip is known to be invalid.
-
Updated tray icon: Refreshed the tray icon to match the current Neptune Wallet branding.