mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-17 05:41:29 +02:00
Wownero: dispatch getCurrentAccount by wallet.type in AccountCustomizer
The "Wallet Accounts" reorder modal threw on open for Wownero wallets: account_customizer.dart unconditionally called monero!.getCurrentAccount, which casts the wallet to MoneroWallet internally. WowneroWallet is a sibling type, not a subtype, so the cast blew up before the active-card swap logic ran. Dispatch on wallet.type and use the wownero! proxy for Wownero, matching the pattern already in card_customizer_bloc.dart, addresses_page.dart, and dashboard_view_model.dart. Skip the swap entirely for any other wallet type rather than guessing. Bump 1.0.0+5 -> 1.0.0+6.
This commit is contained in:
@@ -2,6 +2,7 @@ import 'dart:ui';
|
||||
import 'package:hash_wallet/di.dart';
|
||||
import 'package:hash_wallet/generated/i18n.dart';
|
||||
import 'package:hash_wallet/monero/monero.dart';
|
||||
import 'package:hash_wallet/wownero/wownero.dart';
|
||||
import 'package:hash_wallet/new-ui/pages/card_customizer.dart';
|
||||
import 'package:hash_wallet/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart';
|
||||
import 'package:hash_wallet/new-ui/widgets/coins_page/cards/balance_card.dart';
|
||||
@@ -21,6 +22,7 @@ import 'package:cw_core/card_design.dart';
|
||||
import 'package:cw_core/generate_name.dart';
|
||||
import 'package:cw_core/sync_status.dart';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:cw_core/wallet_type.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
@@ -62,7 +64,13 @@ class _AccountCustomizerState extends State<AccountCustomizer> {
|
||||
super.initState();
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
loadCards();
|
||||
final activeId = monero!.getCurrentAccount(widget.dashboardViewModel.wallet).id;
|
||||
final wallet = widget.dashboardViewModel.wallet;
|
||||
final int? activeId = wallet.type == WalletType.monero
|
||||
? monero?.getCurrentAccount(wallet).id
|
||||
: wallet.type == WalletType.wownero
|
||||
? wownero?.getCurrentAccount(wallet).id
|
||||
: null;
|
||||
if (activeId == null) return;
|
||||
for (int i = 0; i < _items.length-1; i++) {
|
||||
if(_items[i].accountListItem.id == activeId) {
|
||||
final lastIndex = _items.length - 1;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
name: hash_wallet
|
||||
description: Hash Bags — a noncustodial multi-currency wallet by Such Software LLC.
|
||||
version: 1.0.0+5
|
||||
version: 1.0.0+6
|
||||
publish_to: none
|
||||
|
||||
environment:
|
||||
|
||||
Reference in New Issue
Block a user