fix: hide balance for monero accounts (#2256)

Serhii committed May 8, 2025 at 23:47 UTC 5b43cb5373295bbae521117a90a1af59755a2ea6
2 files changed +9 -4
lib/di.dart
+1 -1
@@ -839,7 +839,7 @@ Future<void> setup({
839 if (wallet.type == WalletType.monero ||
840 wallet.type == WalletType.wownero ||
841 wallet.type == WalletType.haven) {
842 - return MoneroAccountListViewModel(wallet);
842 + return MoneroAccountListViewModel(wallet,getIt.get<SettingsStore>());
843 }
844 throw Exception(
845 'Unexpected wallet type: ${wallet.type} for generate Monero AccountListViewModel');
lib/view_model/monero_account_list/monero_account_list_view_model.dart
+8 -3
@@ -1,3 +1,5 @@
1 +import 'package:cake_wallet/entities/balance_display_mode.dart';
2 +import 'package:cake_wallet/store/settings_store.dart';
3 import 'package:cake_wallet/wownero/wownero.dart';
4 import 'package:cw_core/crypto_currency.dart';
5 import 'package:cw_core/wallet_type.dart';
@@ -12,7 +14,9 @@ class MoneroAccountListViewModel = MoneroAccountListViewModelBase
14 with _$MoneroAccountListViewModel;
15
16 abstract class MoneroAccountListViewModelBase with Store {
15 - MoneroAccountListViewModelBase(this._wallet) : scrollOffsetFromTop = 0;
17 + MoneroAccountListViewModelBase(this._wallet,this.settingsStore) : scrollOffsetFromTop = 0;
18 +
19 + final SettingsStore settingsStore;
20
21 @observable
22 double scrollOffsetFromTop;
@@ -26,13 +30,14 @@ abstract class MoneroAccountListViewModelBase with Store {
30
31 @computed
32 List<AccountListItem> get accounts {
33 + final hideBalance = settingsStore.balanceDisplayMode == BalanceDisplayMode.hiddenBalance;
34 if (_wallet.type == WalletType.monero) {
35 return monero
36 !.getAccountList(_wallet)
37 .accounts.map((acc) => AccountListItem(
38 label: acc.label,
39 id: acc.id,
35 - balance: acc.balance,
40 + balance: hideBalance ? '●●●●●●' : acc.balance,
41 isSelected: acc.id == monero!.getCurrentAccount(_wallet).id))
42 .toList();
43 }
@@ -43,7 +48,7 @@ abstract class MoneroAccountListViewModelBase with Store {
48 .accounts.map((acc) => AccountListItem(
49 label: acc.label,
50 id: acc.id,
46 - balance: acc.balance,
51 + balance: hideBalance ? '●●●●●●' : acc.balance,
52 isSelected: acc.id == wownero!.getCurrentAccount(_wallet).id))
53 .toList();
54 }