mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-05-06 15:32:13 +00:00
Merge pull request #733 from cake-tech/CW-296-Edit-sub-address-grey-screen
CW-296 fix editing label subaddresses
This commit is contained in:
commit
194902d8cb
3 changed files with 21 additions and 28 deletions
lib
|
@ -37,6 +37,7 @@ import 'package:cake_wallet/view_model/settings/other_settings_view_model.dart';
|
||||||
import 'package:cake_wallet/view_model/settings/privacy_settings_view_model.dart';
|
import 'package:cake_wallet/view_model/settings/privacy_settings_view_model.dart';
|
||||||
import 'package:cake_wallet/view_model/settings/security_settings_view_model.dart';
|
import 'package:cake_wallet/view_model/settings/security_settings_view_model.dart';
|
||||||
import 'package:cake_wallet/view_model/advanced_privacy_settings_view_model.dart';
|
import 'package:cake_wallet/view_model/advanced_privacy_settings_view_model.dart';
|
||||||
|
import 'package:cake_wallet/view_model/wallet_address_list/wallet_address_list_item.dart';
|
||||||
import 'package:cw_core/unspent_coins_info.dart';
|
import 'package:cw_core/unspent_coins_info.dart';
|
||||||
import 'package:cake_wallet/core/backup_service.dart';
|
import 'package:cake_wallet/core/backup_service.dart';
|
||||||
import 'package:cw_core/wallet_service.dart';
|
import 'package:cw_core/wallet_service.dart';
|
||||||
|
@ -365,8 +366,8 @@ Future setup(
|
||||||
addressListViewModel: getIt.get<WalletAddressListViewModel>(),
|
addressListViewModel: getIt.get<WalletAddressListViewModel>(),
|
||||||
walletViewModel: getIt.get<DashboardViewModel>()));
|
walletViewModel: getIt.get<DashboardViewModel>()));
|
||||||
|
|
||||||
getIt.registerFactoryParam<WalletAddressEditOrCreateViewModel, dynamic, void>(
|
getIt.registerFactoryParam<WalletAddressEditOrCreateViewModel, WalletAddressListItem?, void>(
|
||||||
(dynamic item, _) => WalletAddressEditOrCreateViewModel(
|
(WalletAddressListItem? item, _) => WalletAddressEditOrCreateViewModel(
|
||||||
wallet: getIt.get<AppStore>().wallet!, item: item));
|
wallet: getIt.get<AppStore>().wallet!, item: item));
|
||||||
|
|
||||||
getIt.registerFactoryParam<AddressEditOrCreatePage, dynamic, void>(
|
getIt.registerFactoryParam<AddressEditOrCreatePage, dynamic, void>(
|
||||||
|
|
|
@ -17,8 +17,6 @@ class AddressEditOrCreatePage extends BasePage {
|
||||||
_labelController.addListener(
|
_labelController.addListener(
|
||||||
() => addressEditOrCreateViewModel.label = _labelController.text);
|
() => addressEditOrCreateViewModel.label = _labelController.text);
|
||||||
_labelController.text = addressEditOrCreateViewModel.label;
|
_labelController.text = addressEditOrCreateViewModel.label;
|
||||||
print(_labelController.text);
|
|
||||||
print(addressEditOrCreateViewModel.label);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final WalletAddressEditOrCreateViewModel addressEditOrCreateViewModel;
|
final WalletAddressEditOrCreateViewModel addressEditOrCreateViewModel;
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
import 'package:cake_wallet/view_model/wallet_address_list/wallet_address_list_item.dart';
|
||||||
import 'package:mobx/mobx.dart';
|
import 'package:mobx/mobx.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:cw_core/wallet_base.dart';
|
import 'package:cw_core/wallet_base.dart';
|
||||||
|
@ -27,10 +28,10 @@ class AddressEditOrCreateStateFailure extends AddressEditOrCreateState {
|
||||||
|
|
||||||
abstract class WalletAddressEditOrCreateViewModelBase with Store {
|
abstract class WalletAddressEditOrCreateViewModelBase with Store {
|
||||||
WalletAddressEditOrCreateViewModelBase(
|
WalletAddressEditOrCreateViewModelBase(
|
||||||
{required WalletBase wallet, dynamic item})
|
{required WalletBase wallet, WalletAddressListItem? item})
|
||||||
: isEdit = item != null,
|
: isEdit = item != null,
|
||||||
state = AddressEditOrCreateStateInitial(),
|
state = AddressEditOrCreateStateInitial(),
|
||||||
label = item?.fullName as String? ?? '',
|
label = item?.name ?? '',
|
||||||
_item = item,
|
_item = item,
|
||||||
_wallet = wallet;
|
_wallet = wallet;
|
||||||
|
|
||||||
|
@ -42,7 +43,7 @@ abstract class WalletAddressEditOrCreateViewModelBase with Store {
|
||||||
|
|
||||||
bool isEdit;
|
bool isEdit;
|
||||||
|
|
||||||
final dynamic _item;
|
final WalletAddressListItem? _item;
|
||||||
final WalletBase _wallet;
|
final WalletBase _wallet;
|
||||||
|
|
||||||
Future<void> save() async {
|
Future<void> save() async {
|
||||||
|
@ -98,27 +99,20 @@ abstract class WalletAddressEditOrCreateViewModelBase with Store {
|
||||||
await wallet.walletAddresses.updateAddress(_item.address as String);
|
await wallet.walletAddresses.updateAddress(_item.address as String);
|
||||||
await wallet.save();
|
await wallet.save();
|
||||||
}*/
|
}*/
|
||||||
|
final index = _item?.id;
|
||||||
if (wallet.type == WalletType.monero) {
|
if (index != null) {
|
||||||
await monero
|
if (wallet.type == WalletType.monero) {
|
||||||
!.getSubaddressList(wallet)
|
await monero!.getSubaddressList(wallet).setLabelSubaddress(wallet,
|
||||||
.setLabelSubaddress(
|
accountIndex: monero!.getCurrentAccount(wallet).id, addressIndex: index, label: label);
|
||||||
wallet,
|
await wallet.save();
|
||||||
accountIndex: monero!.getCurrentAccount(wallet).id,
|
}
|
||||||
addressIndex: _item.id as int,
|
if (wallet.type == WalletType.haven) {
|
||||||
label: label);
|
await haven!.getSubaddressList(wallet).setLabelSubaddress(wallet,
|
||||||
await wallet.save();
|
accountIndex: haven!.getCurrentAccount(wallet).id,
|
||||||
}
|
addressIndex: index,
|
||||||
|
label: label);
|
||||||
if (wallet.type == WalletType.haven) {
|
await wallet.save();
|
||||||
await haven
|
}
|
||||||
!.getSubaddressList(wallet)
|
|
||||||
.setLabelSubaddress(
|
|
||||||
wallet,
|
|
||||||
accountIndex: haven!.getCurrentAccount(wallet).id,
|
|
||||||
addressIndex: _item.id as int,
|
|
||||||
label: label);
|
|
||||||
await wallet.save();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue