Hide keys for BTC & LTC (#392)

* Remove WIF and Keys from BTC and LTC wallets in the Wallet seed/keys screen

* Move Title assigning logic to view model
This commit is contained in:
Omar Hatem 2022-06-23 15:36:50 +02:00 committed by GitHub
parent 9568c5f932
commit 8bcf70b8f8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 32 deletions

View file

@ -1,5 +1,4 @@
import 'package:cake_wallet/utils/show_bar.dart';
import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/services.dart';
@ -13,7 +12,7 @@ class WalletKeysPage extends BasePage {
WalletKeysPage(this.walletKeysViewModel);
@override
String get title => S.current.wallet_keys;
String get title => walletKeysViewModel.title;
final WalletKeysViewModel walletKeysViewModel;
@ -27,10 +26,7 @@ class WalletKeysPage extends BasePage {
separatorBuilder: (context, index) => Container(
height: 1,
padding: EdgeInsets.only(left: 24),
color: Theme.of(context)
.accentTextTheme
.title
.backgroundColor,
color: Theme.of(context).accentTextTheme.title.backgroundColor,
child: Container(
height: 1,
color: Theme.of(context).dividerColor,
@ -43,8 +39,7 @@ class WalletKeysPage extends BasePage {
return GestureDetector(
onTap: () {
Clipboard.setData(ClipboardData(text: item.value));
showBar<void>(context,
S.of(context).copied_key_to_clipboard(item.title));
showBar<void>(context, S.of(context).copied_key_to_clipboard(item.title));
},
child: StandartListRow(
title: item.title + ':',

View file

@ -2,7 +2,6 @@ import 'package:cw_core/wallet_type.dart';
import 'package:mobx/mobx.dart';
import 'package:cake_wallet/generated/i18n.dart';
import 'package:cw_core/wallet_base.dart';
import 'package:cake_wallet/bitcoin/bitcoin.dart';
import 'package:cake_wallet/src/screens/transaction_details/standart_list_item.dart';
import 'package:cake_wallet/monero/monero.dart';
import 'package:cake_wallet/haven/haven.dart';
@ -13,19 +12,18 @@ class WalletKeysViewModel = WalletKeysViewModelBase with _$WalletKeysViewModel;
abstract class WalletKeysViewModelBase with Store {
WalletKeysViewModelBase(WalletBase wallet)
: items = ObservableList<StandartListItem>() {
: title = wallet.type == WalletType.bitcoin || wallet.type == WalletType.litecoin
? S.current.wallet_seed
: S.current.wallet_keys,
items = ObservableList<StandartListItem>() {
if (wallet.type == WalletType.monero) {
final keys = monero.getKeys(wallet);
items.addAll([
StandartListItem(
title: S.current.spend_key_public, value: keys['publicSpendKey']),
StandartListItem(
title: S.current.spend_key_private, value: keys['privateSpendKey']),
StandartListItem(
title: S.current.view_key_public, value: keys['publicViewKey']),
StandartListItem(
title: S.current.view_key_private, value: keys['privateViewKey']),
StandartListItem(title: S.current.spend_key_public, value: keys['publicSpendKey']),
StandartListItem(title: S.current.spend_key_private, value: keys['privateSpendKey']),
StandartListItem(title: S.current.view_key_public, value: keys['publicViewKey']),
StandartListItem(title: S.current.view_key_private, value: keys['privateViewKey']),
StandartListItem(title: S.current.wallet_seed, value: wallet.seed),
]);
}
@ -34,29 +32,22 @@ abstract class WalletKeysViewModelBase with Store {
final keys = haven.getKeys(wallet);
items.addAll([
StandartListItem(
title: S.current.spend_key_public, value: keys['publicSpendKey']),
StandartListItem(
title: S.current.spend_key_private, value: keys['privateSpendKey']),
StandartListItem(
title: S.current.view_key_public, value: keys['publicViewKey']),
StandartListItem(
title: S.current.view_key_private, value: keys['privateViewKey']),
StandartListItem(title: S.current.spend_key_public, value: keys['publicSpendKey']),
StandartListItem(title: S.current.spend_key_private, value: keys['privateSpendKey']),
StandartListItem(title: S.current.view_key_public, value: keys['publicViewKey']),
StandartListItem(title: S.current.view_key_private, value: keys['privateViewKey']),
StandartListItem(title: S.current.wallet_seed, value: wallet.seed),
]);
}
if (wallet.type == WalletType.bitcoin || wallet.type == WalletType.litecoin) {
final keys = bitcoin.getWalletKeys(wallet);
items.addAll([
StandartListItem(title: 'WIF', value: keys['wif']),
StandartListItem(title: S.current.public_key, value: keys['publicKey']),
StandartListItem(title: S.current.private_key, value: keys['privateKey']),
StandartListItem(title: S.current.wallet_seed, value: wallet.seed)
StandartListItem(title: S.current.wallet_seed, value: wallet.seed),
]);
}
}
final ObservableList<StandartListItem> items;
final String title;
}