Releases: vultisig/vultisig-android
Releases · vultisig/vultisig-android
v1.0.102
What's Changed
- chore: bump version to 1.0.101 by @johnnyluo in #4308
- fix: use transaction error Rive animation by @alceops in #4305
- Run keygen in parallel with batch FastVault endpoint by @rkokhatskyi in #3980
- feat(thorchain): LP data layer — pool stats, positions, memo paired-address (#2141) by @aminsato in #4309
- [Feat] TonConnect co-signing: multi-message, stateInit, and custom-message signing on EdDSA chains (closes #4268) by @Vaulty-bot in #4283
- Replace deprecated androidx.security.crypto.MasterKey in SharedPrefsMasterKeyInitializer (#4166) by @Vaulty-bot in #4291
- [Test] Add cross-platform vectors and edge cases for backup encryption and server backup (#4192) by @Vaulty-bot in #4209
- Clean up TonApi: error handling, structure, and naming by @aminsato in #4318
- fix: skip THORChain network id fetch on startup when no vaults exist by @aminsato in #4321
- refactor(swap): split SwapQuoteRepository into per-provider sources by @aminsato in #4313
- test: pin Cardano max-amount keysign hash (#3751) by @johnnyluo in #4322
- Fix/3751 pin cardano max amount hash by @johnnyluo in #4323
- fix(thorchain): silence expected NotFound from per-denom metadata fetch (#4326) by @aminsato in #4329
- feat(thorchain): LP UI — positions tab, add/remove flow (#2141) by @aminsato in #4320
- Crash: SecurityScanner throws on Blockaid 'Simulation Error' response, kills main thread (#4334) by @Vaulty-bot in #4336
- fix(solana): thread memo through SPL token signing paths by @realpaaao in #4337
- [Fix] Swap: rank providers by net output (closes #4315) by @aminsato in #4319
- perf(thorchain): single-pool LP lookup for Remove LP screen (#4338) by @aminsato in #4340
- fix(deposit): populate fiat value on joiner verify screen by @aminsato in #4344
- Swap quote for unsupported pair (THOR.RUNE → WINK) shows misleading 'adjust amount' error (#4345) by @Vaulty-bot in #4348
- fix(tx-done): keep status visible after expanding Transaction Details by @aminsato in #4349
- fix(preview): give ChainTokensScreen preview tokens unique ids by @aminsato in #4351
- ChainTokensScreen: THORChain fetches denom metadata for disabled tokens (#4350) by @Vaulty-bot in #4352
- fix(swap): show specific error when balance can't cover gas on percentage tap by @aminsato in #4356
- fix(tx-complete): align title, back button, and padding across initiator/joined (#4343) by @aminsato in #4359
- Pull-to-refresh missing on DeFi chain detail views (Tron / Mayachain / Thorchain / Circle) (#4364) by @Vaulty-bot in #4365
- feat: dApp signing — function-name title + collapsible details (Phase 1) by @realpaaao in #4054
- fix: buffer the latest response so a late requester does not hang by @rkokhatskyi in #4264
- Verify swap transaction: title is 'Swap overview' on initiator but 'Keysign' on joined device (#4346) by @Vaulty-bot in #4369
- fix(scan-qr): use SAF picker so Upload QR Code can reach Downloads by @aminsato in #4372
- chore(icons): update AUTO token icon to current branding by @aminsato in #4373
- fix(notifications): dismiss foreground keysign banner when joining via QR by @aminsato in #4374
- Crash: opening THORChain / MayaChain DeFi section — nested vertically scrollable containers (#4367) by @Vaulty-bot in #4371
- [Test] Add unit tests for core ViewModels covering verify, vault, settings, address entry, and keygen (#4196) by @Vaulty-bot in #4198
- fix(swap): make flip actually swap src and dst (#4354) by @aminsato in #4358
- test(send): Phase A characterization tests for SendFormViewModel by @aminsato in #4377
- refactor(keysign): unify deposit UI-model construction via shared mapper by @aminsato in #4382
- fix(tron-defi): two-tone Bandwidth/Energy counter with space-padded slash by @aminsato in #4386
- feat: Blockaid simulation hero for dApp signing (#4095) by @rkokhatskyi in #4306
- Keysign: detect silent peers and fail fast instead of waiting 60s × 4 (#4327) by @Vaulty-bot in #4339
- DeFi (Circle USDC): pull-to-refresh indicator stays visible after refresh completes (#4368) by @Vaulty-bot in #4375
- fix(swap): hide Provider/fees block when quote error is shown (#4347) by @aminsato in #4353
- fix(thorchain): skip /status fetch when no vault uses THORChain by @aminsato in #4376
- refactor(send): split SendFormViewModel into Address/Amount managers by @aminsato in #4393
- DeFi Tron: loading state hides tabs, resource cards, and freeze position card (#4380) by @Vaulty-bot in #4387
- feat(evm): static common selector table for offline 4byte decode (#4055) by @aminsato in #4310
- Transaction Complete shows estimated max fee, not actual burned fee, for EVM (#4392) by @Vaulty-bot in #4400
- fix(secure-prefs): throw KeyStoreException from buildSecurePrefsKey by @rkokhatskyi in #4408
- fix(secure-prefs): complete prewarm deferred on every non-cancellation throwable by @rkokhatskyi in #4406
- fix(secure-prefs): narrow destructive recovery to KeyPermanentlyInvalidatedException only (#4401) by @rkokhatskyi in #4405
- Crash: IllegalArgumentException in LazyList SubcomposeLayout on Android 15 (Oppo) (#4388) by @Vaulty-bot in #4389
- fix(evm): handle non-2xx RPC responses without crashing balance fetch (#4414) by @aminsato in #4417
- Join Keysign: Transaction Details collapse should match extension (#4394) by @Vaulty-bot in #4407
- test(preview): add SelectChainPopup PreviewActivity entry (#4411) by @aminsato in #4416
- refactor(send): split submit functions into per-defiType strategies by @aminsato in #4412
- fix(chain-dashboard): add cross-cutting top toolbar with back button (#4383) by @aminsato in #4399
- feat(home): add 'Buy $VULT' promo banner (#4398) by @aminsato in #4424
- Fix THORChain secured asset swap quotes by @realpaaao in #4429
- Network Fee on QR-scanned EVM contract call is ~5× lower on Android than on the extension (#4370) by @Vaulty-bot in #4381
- Swap: missing Outbound Fee row and Swap Fee percentage in Total Fee breakdown (#4397) by @Vaulty-bot in #4419
- Crash: FileNotFoundException EACCES in Uri.fileContent when reading content URI (#4426) by @Vaulty-bot in #4435
- Crash: IllegalArgumentException in LazyList SubcomposeLayout recurs on Android 16 (Samsung Galaxy A15) (#4427) by @Vaulty-bot in #4434
- feat: Unlimited approval warning indicator (Phase 1.6) (#4056) by @Vaulty-bot in #4422
- Misleading error: 'Invalid QR code content' shown when offline during sign transaction (#4430) by @Vaulty-bot in #4440
- Swap: RUJI (THORChain) missing from Select Asset list even when enabled in token list (#4421) by @Vaulty-bot in #4441
- fix: validate EdDSA pubkey before PublicKey ctor (#4428) by @Vaulty-bot in #4431
- Verify screen: network fee mismatch + missing fiat value on joined device (#4378) by @Vaulty-bot i...
v1.0.101
What's Changed
- bump: update version to 1.0.100 by @johnnyluo in #4275
- fix: QR scanner viewport sized to Figma spec (#4258) by @aminsato in #4266
- fix: emit empty list when vault id is unknown in getEnabledTokens by @rkokhatskyi in #4262
- fix: scale fiat balances by the selected currency precision by @rkokhatskyi in #4274
- ThorChainApi.kt: multiple bugs, inconsistencies, and code smells (#4244) by @Vaulty-bot in #4259
- fix: include chainPublicKeys and pubKeyMLDSA in MapVaultToProto by @rkokhatskyi in #4281
- Fix serialVersionUID warning in SwapException.kt (#4230) by @Vaulty-bot in #4260
- fix: return null instead of hanging when transaction id is unknown by @rkokhatskyi in #4267
- fix: multiple onboarding UI issues (#4255) by @aminsato in #4276
- fix: restore SendFormScreen.amountField testTag (#4180) by @aminsato in #4277
- fix: add stable testTags to swap form controls (#4181) by @aminsato in #4280
- refactor: derive TRON_STAKING_MEMO_REGEX from enum entries (#4162) by @aminsato in #4278
- fix: render password prompt Compose previews by @aminsato in #4285
- TRON: TronPendingWithdrawalsCard virtualization + polling cadence (#4160) by @Vaulty-bot in #4284
- refactor(thorchain): route mainnet endpoints through Liquify gateway (#4245) by @aminsato in #4279
- fix: handle already-joined vault on QR scan instead of hanging by @aminsato in #4287
- test: stabilize flaky QBTC token re-add test by @aminsato in #4288
- feat(tron): show Bandwidth/Energy on pending withdrawal rows by @aminsato in #4289
- fix(a11y): expose ChooseDeviceCount Rive screen to TalkBack by @aminsato in #4290
- fix(bittensor): handle 404 from taostats proxy (#4292) by @aminsato in #4293
- feat(swap): auto-fallback to streaming swap when THORChain rapid slippage >3% by @johnnyluo in #4297
- fix(tron): drop unwired Freeze card info icon (#4163) by @aminsato in #4301
- fix(ui): align vault delete screen copy with Figma (#4295) by @aminsato in #4299
- fix: crash IllegalArgumentException in LazyList SubcomposeLayout on Android 16 (#4066) by @johnnyluo in #4300
Full Changelog: v1.0.100...v1.0.101
v1.0.100
What's Changed
- bump: update version to 1.0.99 by @johnnyluo in #4155
- fix: UTXO swap byteFee unit mismatch causing Error_not_enough_utxos (#4164) by @aminsato in #4165
- fix: render join-device keysign progress full-screen (#4157) by @aminsato in #4158
- Tron: broadcast fails with NOT_ENOUGH_EFFECTIVE_CONNECTION; status lookup also logs noisy deserialization error (#4175) by @Vaulty-bot in #4179
- Referral: 'Failed to check referral code' shown when THORName does not exist (#4171) by @Vaulty-bot in #4176
- feat: Bandwidth/Energy resource tab for TRON freeze/unfreeze (#4014) by @aminsato in #4142
- fix: eliminate Circle DeFi isAccountOpen race that flaked unit tests by @aminsato in #4177
- test: cover UTXO swap gasFee per-byte rate regression (#4165) by @aminsato in #4174
- Relocate LOCAL_PARTY_ID_PREFIX out of generic ServerUtils and de-duplicate in tests (#4237) by @Vaulty-bot in #4252
- Fix keysign completion for hashless broadcasts by @realpaaao in #4257
- fix: validate custom token address and metadata before search by @rkokhatskyi in #4256
- Tron: refresh DeFi screen and DeFi balance cache after keysign by @aminsato in #4231
- Uncaught Exception in ThorChainApi.getTHORChainInboundAddresses on Blu G53 (Android 13) (#4219) by @Vaulty-bot in #4225
- fix: surface dust-threshold error with a specific message (#4167) by @aminsato in #4224
- [ADD] AddressInputExtensions: BIP-21/EIP-681 URI extraction and full unicode-whitespace handling (#4199) by @Vaulty-bot in #4208
Full Changelog: v1.0.99...v1.0.100
v1.0.99
What's Changed
- chore: bump version to 1.0.98 by @johnnyluo in #3906
- crash: IllegalStateException in KeygenPeerDiscoveryViewModel when KeyImport mnemonic extraction fails (#3904) by @Vaulty-bot in #3905
- fix: remove redundant delay before startSessionWithRetry (#3857) by @johnnyluo in #3908
- fix: unregister BroadcastReceiver leak and remove vaultId force-unwraps by @rkokhatskyi in #3913
- feat: BondForm address/asset card UX improvements by @aminsato in #3833
- fix: chain names hidden in chain/DeFi selection grids by @johnnyluo in #3916
- fix: disable back button on vault backup onboarding screen by @johnnyluo in #3917
- fix: route to EnterVaultInfoScreen on "Use a different email" (#3910) by @johnnyluo in #3918
- cleanup: remove unused string resources from strings.xml (#3780) by @Vaulty-bot in #3919
- cleanup: remove 9 unused UI component files by @johnnyluo in #3915
- fix: correct secured asset detection for THORChain token swaps by @realpaaao in #3784
- fix: localize hardcoded content descriptions for accessibility by @rkokhatskyi in #3830
- fix: replace !! force-unwrap @Suppress annotations with safe alternatives by @johnnyluo in #3920
- fix: add back button to ErrorView for unrecoverable error screens by @rkokhatskyi in #3923
- feat: fetch real LP balances and APR for Maya DeFi LP tab by @aminsato in #3758
- fix: correct typos in string resource key names by @johnnyluo in #3925
- feat: add QBTC chain support with ML-DSA-44 post-quantum signing by @rkokhatskyi in #3573
- fix: translate untranslated strings in HR, IT, PT locales (#3814) by @johnnyluo in #3926
- feat: warn when importing seed phrase that already exists as fast vault on server by @aminsato in #3931
- refactor: remove MLDSA key generation from KeygenViewModel by @johnnyluo in #3934
- fix: multiple onboarding flow improvements (#3668) by @aminsato in #3929
- refactor: delegate Cardano UTXO selection to WalletCore (same as BTC) (#3932) by @Vaulty-bot in #3933
- fix: hide Unlock Tier button when tier is already active by @aminsato in #3935
- [Fix] KyberSwap affiliate fees not collected, $100 threshold blocks small swaps, discount tiers excluded [Swap] (#3704) by @Vaulty-bot in #3924
- fix: Plugin Store badge inner shadow and rename (#3361) by @aminsato in #3936
- fix: dynamic Solana priority fee via getRecentPrioritizationFees by @johnnyluo in #3927
- fix: replace count-based strings with proper plurals resources (#3940) by @Vaulty-bot in #3943
- fix: invalidate balance cache after successful send by @aminsato in #3948
- Add mono variant drawable for Bittensor chain logo (#3947) by @Vaulty-bot in #3949
- Review VsButton forceClickable parameter with designer (#3946) by @Vaulty-bot in #3950
- fix: MAYA token swap support — correct decimals and pool-based pricing by @realpaaao in #3951
- fix: Dash UTXO fetching via native RPC to prevent tx-txlock-conflict by @realpaaao in #3945
- fix: remove unnecessary filter for Dash block IDs in UTXO list by @johnnyluo in #3958
- refactor: clean up SelectAssetViewModel (#3938) by @Vaulty-bot in #3944
- fix: unhandled NetworkException crash on no-internet (#3645) by @Vaulty-bot in #3660
- fix: handle empty ATA list for Solana SPL transfers to new recipients by @johnnyluo in #3959
- fix: set THORChain streaming interval to 0 for Rapid Swaps by @johnnyluo in #3960
- Crash: NoSuchElementException in SwapFormViewModel.firstSendSrc when chain has no matching address (v97) (#3963) by @Vaulty-bot in #3964
- fix: re-enable KeysignMessageTest.testToJson (#3965) by @Vaulty-bot in #3967
- refactor: unify DeFi cache loading into a single generic service (#3966) by @Vaulty-bot in #3968
- fix: MLDSA keygen on existing fast vault — add password verification and OTP by @aminsato in #3955
- Fix dest address for EVM fee estimation by @rkokhatskyi in #3975
- fix: handle HTTP 500 from markLocalPartyComplete without failing keygen (#3971) by @Vaulty-bot in #3973
- Fix NPE in LiFi swap quote when transaction value is null by @rkokhatskyi in #3995
- feat: check node whitelist on Maya bond form by @aminsato in #3937
- fix: remove untranslatable strings from Korean locale file by @aminsato in #4001
- feat: Add Pool (LP) screen with Figma design by @aminsato in #3954
- fix: improve import file snackbar feedback for success and duplicate states by @aminsato in #4000
- Add USDS drawable and CoinLogo mapping by @aminsato in #3999
- Update VerifyExistingVault screen design and routing by @aminsato in #4002
- chore(deps): bump addressable from 2.8.8 to 2.9.0 by @dependabot[bot] in #4013
- fix: GG20 keysign swallows CancellationException by @rkokhatskyi in #4023
- feat: Replace ChooseDeviceCount UI with Rive animation by @aminsato in #4016
- fix: show loading state while validating biometric fast sign password by @aminsato in #4033
- fix: make DeFi positions screen scrollable (#3239) by @aminsato in #4029
- Crash: KeyStoreException 'master key exists but is unusable' in provideEncryptedSharedPrefs (v98) (#4027) by @Vaulty-bot in #4028
- fix: TON transaction status uses wrong API field by @rkokhatskyi in #4022
- ANR: Input dispatching timed out — Unresponsive GPU on main thread (#4030) by @Vaulty-bot in #4032
- fix: show correct Cardano fee (180000 lovelace) instead of 0 by @aminsato in #4011
- fix: remove unreachable code in Server.kt by @aminsato in #4037
- fix: remove unreachable code and duplication in fee services by @aminsato in #4036
- fix: correct Modifier extensions and Timber logging misuse by @aminsato in #4034
- fix: use shorthand memo prefixes for liquidity operations by @aminsato in #4035
- fix: transaction history correctness and reliability by @rkokhatskyi in #4024
- refactor: split SendFormScreen.kt into smaller focused files (#4004) by @Vaulty-bot in #4007
- feat: Remove Pool (LP) screen with Figma design by @aminsato in #3972
- feat: add prevent screenshots privacy setting by @aminsato in #4051
- Fix unsafe cast in Mediator getMessage by @rkokhatskyi in #4065
- fix: time-out cached THORChain network id read by @rkokhatskyi in #4064
- fix: prevent splash screen from hanging on slow DB by @rkokhatskyi in #4061
- refactor: migrate MasterKeys to MasterKey.Builder by @rkokhatskyi in #4063
- feat: implement Tron DeFi (freeze/unfreeze bandwidth and energy) by @aminsato in #3974
- Redesign QR scanner screen UI by @aminsato in #4003
- fix: sur...
v1.0.98
What's Changed
- chore: bump version to 1.0.97 by @johnnyluo in #3572
- ci: add merge_group trigger for merge queue support by @johnnyluo in #3574
- fix: remove 100dp max width on swap fee values (#3517) by @johnnyluo in #3575
- fix: use footnote text style in SwapTransactionOverview details by @johnnyluo in #3576
- fix: replace hardcoded Banner border colors with theme tokens by @johnnyluo in #3577
- fix: replace legacy theme tokens in ScanQrScreen permission text by @johnnyluo in #3578
- fix: CryptoConnectionSelect tab labels 12sp → 10sp (#3461) by @johnnyluo in #3579
- fix: reduce tip icon size from 16dp to 12dp to match Figma by @johnnyluo in #3580
- fix: redesign transaction history empty state to match Figma by @aminsato in #3582
- fix: await gas fee estimation before proceeding in send flow by @gomesalexandre in #3564
- chore: rename github_token env var to trustwallet_pat by @gomesalexandre in #3584
- fix: adjust EmptyReferralBanner spacing and icon size to match Figma (#3446) by @johnnyluo in #3585
- fix: match Circle DeFi action buttons styling to Figma (#3445) by @johnnyluo in #3586
- fix: HeaderDeFiWidget icon size 36dp → 48dp to match Figma (#3435) by @johnnyluo in #3587
- fix: add @ symbol to Follow banner button text by @gomesalexandre in #3593
- fix: align string labels with iOS/Extension (DRIFT-006, 015, 017) by @gomesalexandre in #3594
- fix: align more string labels with iOS/Extension (DRIFT-013, 016, 022) by @gomesalexandre in #3595
- fix: batch string alignment — vault creation + swap flows (9 drifts) by @gomesalexandre in #3596
- fix: enforce device scan limit during keygen peer discovery by @rkokhatskyi in #3597
- fix: cross-platform string consistency batch 4 (DRIFT-024, 042, 048) by @gomesalexandre in #3598
- Fix OTP paste button alignment on FastVault verification by @rkokhatskyi in #3599
- fix: migrate TransactionDoneScreen to Brockmann design system by @johnnyluo in #3602
- chore: migrate THORChain RPC endpoints to thorchain.network by @johnnyluo in #3601
- fix: migrate KeysignLoadingScreen to Brockmann and Rive by @johnnyluo in #3603
- fix: correct border.light color to match Figma (#3405) by @johnnyluo in #3605
- fix: correct disabled button colors to match Figma (#3401) by @johnnyluo in #3606
- fix: add missing Vault Notifications section header (#3400) by @johnnyluo in #3607
- fix: resize BackupVaultScreen animation to match Figma (#3397) by @johnnyluo in #3608
- fix: remove third consent checkbox to match Figma (#3398) by @johnnyluo in #3609
- fix: migrate ConfirmDeleteScreen to V2Scaffold (#3395) by @johnnyluo in #3610
- fix: correct bodyS font weight to 550 to match Figma (#3392) by @johnnyluo in #3611
- fix: correct balance largeTitle font weight and letterSpacing (#3386) by @johnnyluo in #3612
- fix: correct detail row value font to 14sp body.s.medium (#3382) by @johnnyluo in #3613
- fix: migrate DiscountTiersScreen to V2Scaffold (#3377) by @johnnyluo in #3614
- fix: correct ChooseVaultButton padding to match Figma (#3369) by @johnnyluo in #3615
- fix: position APY hint box above icon using screen-relative coordinates by @aminsato in #3590
- fix: align OTP screen buttons with Figma design (#3588) by @aminsato in #3591
- feat: extract TokenAndChainLogo into a reusable component by @aminsato in #3616
- fix: adjust maxOtherDevices calculation to handle minimumDevices edge… by @johnnyluo in #3620
- feat: update swap transaction card to match Figma by @aminsato in #3617
- [BUG] Polkadot balance fails to load — Subscan API unreliable (#3618) by @Vaulty-bot in #3619
- UI Mismatch: SecurityScannerBottomSheet - Icon size and title font mismatch (#3412) by @Vaulty-bot in #3621
- fix: forward evm chain scan address by @gomesalexandre in #3622
- feat: add referral button to fast vault setup toolbar by @gomesalexandre in #3604
- UI Mismatch: ChooseDeviceCount - Description card corner radii (#3359) by @Vaulty-bot in #3637
- UI Mismatch: ChooseDeviceCount - Progress bar gradient colors (#3356) by @Vaulty-bot in #3635
- refactor: remove unused DefaultChainsSettingScreen by @johnnyluo in #3632
- refactor: remove unused BiometricsEnableScreen by @johnnyluo in #3631
- refactor: migrate SecurityScannerEnableScreen to V2Scaffold by @johnnyluo in #3629
- fix: add bottom gradient fade to bottom sheets (#3367) by @johnnyluo in #3630
- fix: migrate ReshareStartScreen to V2 design system by @johnnyluo in #3634
- fix: match vault notification toggle row sizing to Figma by @johnnyluo in #3636
- fix: use tertiary text color for notification description (#3350) by @johnnyluo in #3638
- fix: correct in-app notification banner design (#3628) by @aminsato in #3639
- fix: fix KeyImportFeatureSpotlightScreen Compose Preview by @aminsato in #3643
- fix: SOL to USDC swap fails with route not available (#3623) by @rkokhatskyi in #3644
- UI Mismatch: ChooseDeviceCount - Stepper -/+ button colors (#3351) by @Vaulty-bot in #3649
- UI Mismatch: ChooseDeviceCount - Button color should be #0B4EFF (#3347) by @Vaulty-bot in #3653
- fix: show green validation border on vault name input by @gomesalexandre in #3657
- fix: match TokenDetailScreen action button spacing to Figma (#3340) by @johnnyluo in #3652
- fix: remove legacy QrAddressScreen replaced by bottom sheet (#3330) by @johnnyluo in #3654
- fix: show error state when importing duplicate vault (#3647) by @rkokhatskyi in #3648
- feat: ens auto-resolve and ios-matching from/to label display on send screens by @gomesalexandre in #3556
- fix: match TokenDetailScreen metadata background to Figma (#3328) by @johnnyluo in #3659
- feat: add Korean language translation (#3296) by @rkokhatskyi in #3663
- remove: delete Blowfish API integration by @aminsato in #3658
- fix: match ChainTokensScreen top bar gradient to Figma (#3348) by @johnnyluo in #3651
- remove: clean up IS_IMPORT_SEEDPHRASE_ENABLED feature flag by @rkokhatskyi in #3666
- feat: add Compose previews for main screens and fix scaffold background by @aminsato in #3665
- chore(deps): bump json from 2.18.0 to 2.19.2 by @dependabot[bot] in #3678
- fix: remove unused strings from localization files by @johnnyluo in #3667
- fix: redundant 'is SwapPayload.MayaChain' checks in SigningHelper (#3682) by @Vaulty-bot in #3686
- remove: delete WEWE token from Base chain by @aminsato in #3679
- fix: migrate deprecated calculateFees(chain...
v1.0.97
What's Changed
- Bump version to 1.0.96 by @johnnyluo in #3246
- Add dilithium lib by @johnnyluo in #3240
- Update onboarding flow - part one by @aminsato in #3225
- Fx malformed rive animation by @aminsato in #3252
- Refactor affiliate parameters handling in MayaChainApi and SwapFormVi… by @johnnyluo in #3251
- Update checkbox alignments by @aminsato in #3253
- Enhance Key Import functionality by refining chain settings handling … by @johnnyluo in #3249
- #3098 Feature: Server Backup option by @rkokhatskyi in #3257
- Add AZTEC token by @aminsato in #3256
- feat: add Firebase Cloud Messaging support by @johnnyluo in #3258
- Update UI to match figma by @aminsato in #3259
- Remove unused Rives files by @aminsato in #3262
- Enable drag handle on backup bottom sheets by @rkokhatskyi in #3264
- Re-enable Edit Chains for KeyImport vaults with chain limitation banner by @rkokhatskyi in #3263
- chore: add ktfmt formatter with KOTLIN_OFFICIAL style by @johnnyluo in #3265
- Fix empty chain list when selecting chains manually during import scan by @rkokhatskyi in #3267
- Add pre-commit hook steps into the Readme by @rkokhatskyi in #3272
- Add repo standards (safety hooks, AGENTS.md, CodeRabbit, ISSUE_GUIDE) by @realpaaao in #3273
- Add "Before you start" onboarding screen for seed phrase import by @rkokhatskyi in #3275
- Add knowledge base references to CLAUDE.md by @realpaaao in #3274
- Fix swap error popup dismissed when keyboard closes by @johnnyluo in #3277
- Implement new chain scanning screen from Figma by @rkokhatskyi in #3279
- Fix crash when no app can handle explorer URL by @johnnyluo in #3278
- Fix crash on Android 8.0 when locking screen orientation by @johnnyluo in #3276
- Fix mismatched design in onboarding v3 by @aminsato in #3283
- feat: customize SendForm UI for Circle USDC deposit/withdraw flows by @aminsato in #3286
- Show correct error message when swap amount is below dust threshold by @aminsato in #3285
- [BUG] Search bar does not show cancel button (#3280) by @Vaulty-bot in #3282
- Update issue templates to agent-ready format by @Vaulty-bot in #3281
- Adjust device count screen for create vault and key import flows by @rkokhatskyi in #3291
- Bump faraday from 1.8.0 to 1.10.5 by @dependabot[bot] in #3295
- fix: exclude LP tokens from swap asset selection (#3207) by @aminsato in #3289
- Implement push notification settings and handling by @aminsato in #3271
- fix: handle server-side custom payload ID in keysign join flow by @johnnyluo in #3294
- fix: resolve CI build warnings and optimize AVD caching by @johnnyluo in #3299
- fix: foreground push notification shows banner instead of auto-navigating by @aminsato in #3310
- fix: complete custom message signing flow without broadcasting by @johnnyluo in #3315
- fix: always send keysign notification regardless of sender's opt-in by @aminsato in #3316
- fix: deduplicate push notifications in keysign flow by @aminsato in #3319
- feat: batch vault notification opt-ins in VaultAccountsViewModel by @aminsato in #3318
- fix: handle null keysign payload gracefully instead of crashing (#3311) by @johnnyluo in #3317
- fix: pin action buttons at bottom with scrollable content by @aminsato in #3320
- Add Figma MCP workflow instructions to CLAUDE.md by @rkokhatskyi in #3321
- Add Figma audit and implementation skills for Claude Code by @rkokhatskyi in #3544
- fix: correct icon size and spacing in TransactionTypeButton (#3322) by @johnnyluo in #3545
- fix: lock icon 24dp → 32dp on KeysignPasswordScreen by @rkokhatskyi in #3552
- fix: AccountItem chain-to-address gap 4dp → 2dp (Figma) by @rkokhatskyi in #3553
- fix: referral rewards icon 24dp → 20dp (Figma) by @rkokhatskyi in #3554
- fix: TransactionTypeButton spacing 4dp → 8dp (Figma) by @rkokhatskyi in #3555
- fix: hide balance button text 14sp → 12sp (Figma) by @rkokhatskyi in #3550
- fix: upgrade banner button text 14sp → 12sp (Figma) by @rkokhatskyi in #3551
- fix: staking/LP widget icon size 46dp → 48dp (Figma) by @rkokhatskyi in #3549
- fix: camera button size 64dp → 62dp, icon 20dp → 24dp by @rkokhatskyi in #3548
- fix: swap button color #2155DF → #0B4EFF (Figma) by @rkokhatskyi in #3546
- fix: banner close button opacity 20% → 5% (Figma) by @rkokhatskyi in #3547
- Session-Based Transaction History by @aminsato in #3233
- fix: DeFi warning banner corner radius 16dp → 12dp per Figma by @rkokhatskyi in #3560
- fix: biometrics screen font and color per Figma (#3420) by @rkokhatskyi in #3570
- fix: ConnectingToServer title-subtitle spacing 16dp → 12dp (#3425) by @rkokhatskyi in #3569
- fix: backup vault title-to-description gap 32dp → 16dp (#3402) by @rkokhatskyi in #3568
- fix: referral banner corner radius 16dp → 12dp (#3394) by @rkokhatskyi in #3567
- fix: keysign password screen spacing per Figma (#3444) by @rkokhatskyi in #3566
- docs: enforce full-screen screenshots and external hosting policy by @rkokhatskyi in #3565
- fix: SendTxOverview Done button Small → Medium per Figma by @rkokhatskyi in #3563
- fix: SecurityScannerBadget remove hardcoded 14.sp, use theme footnote by @rkokhatskyi in #3562
- fix: TransactionTypeButton label color to match Figma (#3324) by @johnnyluo in #3558
- fix: referral vault avatar size 20dp → 28dp per Figma by @rkokhatskyi in #3561
New Contributors
- @Vaulty-bot made their first contribution in #3282
- @dependabot[bot] made their first contribution in #3295
Full Changelog: v1.0.96...v1.0.97
v1.0.96
What's Changed
- Bump version to 1.0.95 by @johnnyluo in #3170
- Add Asset selection support for Maya chain by @aminsato in #3171
- Validate form fields before enabling SignMessage button by @johnnyluo in #3183
- Add NoFoundContent component for empty asset and network states by @johnnyluo in #3184
- #3172 Fix add folder input field focus by @rkokhatskyi in #3188
- #3185 Disable Swap button upon error by @rkokhatskyi in #3189
- Update commondata to latest cab07d8 by @rkokhatskyi in #3190
- Fix minor issues in address book screen by @aminsato in #3186
- Fix the last hidden vault in Edit Folder Screen by @aminsato in #3191
- #3192 Allow flip Swap token values + caching by @rkokhatskyi in #3193
- Update ThorChain API endpoint for token price retrieval by @johnnyluo in #3195
- Add loading indicator before loading the secure assets by @aminsato in #3198
- Update CODEOWNERS by @aminsato in #3206
- Update text colors base on Figma design by @aminsato in #3208
- Update Rive library by @aminsato in #3205
- Add dynamic transaction status by @aminsato in #3151
- Update import vault UI by @aminsato in #3212
- Prevent token selection from being cleared when adding tokens by @aminsato in #3220
- Add keyboard awareness to manage bottom bar visibility by @aminsato in #3221
- Fix fetching balance on every screen change by @aminsato in #3219
- Fix RuntimeException by @aminsato in #3223
- Fix loadTransaction crash by @aminsato in #3222
- Add CLAUDE.md documentation for project context by @johnnyluo in #3224
- Add Solana signing support by @aminsato in #3211
- Fetch usdPrice for Solana tokens by @aminsato in #3226
- Add Referral structure to MAYA swaps by @aminsato in #3229
- Improve transaction status for LTC and Solana by @aminsato in #3230
- Import Seed Phrase feature by @rkokhatskyi in #3228
- Adjust Hyper liquid icon by @aminsato in #3236
- Add Solana support to THORChain swap provider by @aminsato in #3234
- Seedphrase chain select v2 - Figma designs, search improvements by @rkokhatskyi in #3237
- Fix UnknownHostException by @aminsato in #3199
- Filter chain public key for vaults imported from browser extension by @rkokhatskyi in #3243
- Remove Register Vault screen and associated resources by @johnnyluo in #3244
- #3213 Improve fast vault detection by @rkokhatskyi in #3245
Full Changelog: v1.0.95...v1.0.96
v1.0.95
What's Changed
- Bump version to 1.0.93 by @johnnyluo in #3123
- Fix close and paste buttons by @aminsato in #3128
- Remove "Cancel" text display by @aminsato in #3129
- Update "no chains found " search result by @aminsato in #3134
- Fix incorrect error message for invalid address by @aminsato in #3136
- [Fix]: Blast Miner Tip Fees by @JaimeToca in #3139
- [EVM]: Implements eth_signTypedData_v4 by @JaimeToca in #3131
- Update import vault bottomsheet by @aminsato in #3133
- Add vibration haptic event by @aminsato in #3142
- Update the progress animation by @aminsato in #3143
- Add search functionality in token search by @aminsato in #3144
- Add loading after clicking the percent buttons by @aminsato in #3145
- Add haptic feedback for key generation and signing states by @aminsato in #3154
- Change from JsonObject to JsonArray for signAmino by @aminsato in #3147
- Add HTTP request retry mechanism by @aminsato in #3146
- Fix RuntimeException by @aminsato in #3153
- Fix Circle can not be loaded by @aminsato in #3155
- Update splash screen by @aminsato in #3156
- Ensure navigation events aren't dropped while the splash is visible by @aminsato in #3157
- [DeFi]: Calculate Total Banner Price by @JaimeToca in #3158
- [DeFi]: Update sTCY display and interaction by @JaimeToca in #3160
- [Fix]: Circle Error Handling by @JaimeToca in #3161
- Fix fetching Balance on every screen by @aminsato in #3162
- Show unstake button only if stake amount is greater than zero by @aminsato in #3137
- Fix FileNotFoundException by @aminsato in #3167
Full Changelog: v1.0.93...v1.0.95
v1.0.94
What's Changed
- Bump version to 1.0.93 by @johnnyluo in #3123
- Fix close and paste buttons by @aminsato in #3128
- Remove "Cancel" text display by @aminsato in #3129
- Update "no chains found " search result by @aminsato in #3134
- Fix incorrect error message for invalid address by @aminsato in #3136
- [Fix]: Blast Miner Tip Fees by @JaimeToca in #3139
- [EVM]: Implements eth_signTypedData_v4 by @JaimeToca in #3131
- Update import vault bottomsheet by @aminsato in #3133
- Add vibration haptic event by @aminsato in #3142
- Update the progress animation by @aminsato in #3143
- Add search functionality in token search by @aminsato in #3144
- Add loading after clicking the percent buttons by @aminsato in #3145
- Add haptic feedback for key generation and signing states by @aminsato in #3154
- Change from JsonObject to JsonArray for signAmino by @aminsato in #3147
- Add HTTP request retry mechanism by @aminsato in #3146
- Fix RuntimeException by @aminsato in #3153
- Fix Circle can not be loaded by @aminsato in #3155
- Update splash screen by @aminsato in #3156
- Ensure navigation events aren't dropped while the splash is visible by @aminsato in #3157
- [DeFi]: Calculate Total Banner Price by @JaimeToca in #3158
- [DeFi]: Update sTCY display and interaction by @JaimeToca in #3160
- [Fix]: Circle Error Handling by @JaimeToca in #3161
- Fix fetching Balance on every screen by @aminsato in #3162
- Show unstake button only if stake amount is greater than zero by @aminsato in #3137
- Fix FileNotFoundException by @aminsato in #3167
Full Changelog: v1.0.93...v1.0.94
v1.0.93
What's Changed
- Bump version to 1.0.92 by @johnnyluo in #3121
- [Fix]: Adjust Retry Request by @JaimeToca in #3122
Full Changelog: v1.0.92...v1.0.93