mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-18 05:51:34 +02:00
Add name text field for restore wallet forms. Update terms of use for monero.com app
This commit is contained in:
@@ -10,6 +10,7 @@ import 'package:cake_wallet/src/screens/base_page.dart';
|
||||
import 'package:cake_wallet/src/widgets/primary_button.dart';
|
||||
import 'package:cake_wallet/src/widgets/alert_with_one_action.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/wallet_type_utils.dart';
|
||||
|
||||
class DisclaimerPage extends BasePage {
|
||||
DisclaimerPage({this.isReadOnly = false});
|
||||
@@ -48,7 +49,10 @@ class DisclaimerBodyState extends State<DisclaimerPageBody> {
|
||||
}
|
||||
|
||||
Future getFileLines() async {
|
||||
_fileText = await rootBundle.loadString('assets/text/Terms_of_Use.txt');
|
||||
_fileText = await rootBundle.loadString(
|
||||
isMoneroOnly
|
||||
? 'assets/text/Monerocom_Terms_of_Use.txt'
|
||||
: 'assets/text/Terms_of_Use.txt' );
|
||||
setState(() {});
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,9 @@ import 'package:flutter/material.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/src/widgets/blockchain_height_widget.dart';
|
||||
import 'package:cake_wallet/src/widgets/base_text_form_field.dart';
|
||||
import 'package:cake_wallet/src/widgets/base_text_form_field.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/core/validator.dart';
|
||||
|
||||
class WalletRestoreFromKeysFrom extends StatefulWidget {
|
||||
WalletRestoreFromKeysFrom({Key key, this.onHeightOrDateEntered})
|
||||
@@ -23,7 +26,8 @@ class WalletRestoreFromKeysFromState extends State<WalletRestoreFromKeysFrom> {
|
||||
nameController = TextEditingController(),
|
||||
addressController = TextEditingController(),
|
||||
viewKeyController = TextEditingController(),
|
||||
spendKeyController = TextEditingController();
|
||||
spendKeyController = TextEditingController(),
|
||||
nameTextEditingController = TextEditingController();
|
||||
|
||||
final GlobalKey<FormState> formKey;
|
||||
final GlobalKey<BlockchainHeightState> blockchainHeightKey;
|
||||
@@ -31,6 +35,7 @@ class WalletRestoreFromKeysFromState extends State<WalletRestoreFromKeysFrom> {
|
||||
final TextEditingController addressController;
|
||||
final TextEditingController viewKeyController;
|
||||
final TextEditingController spendKeyController;
|
||||
final TextEditingController nameTextEditingController;
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
@@ -48,6 +53,11 @@ class WalletRestoreFromKeysFromState extends State<WalletRestoreFromKeysFrom> {
|
||||
child: Form(
|
||||
key: formKey,
|
||||
child: Column(children: <Widget>[
|
||||
BaseTextFormField(
|
||||
controller: nameTextEditingController,
|
||||
hintText: S.of(context).wallet_name,
|
||||
validator: WalletNameValidator()),
|
||||
Container(height: 20),
|
||||
BaseTextFormField(
|
||||
controller: addressController,
|
||||
keyboardType: TextInputType.multiline,
|
||||
|
||||
@@ -7,6 +7,9 @@ import 'package:cake_wallet/src/screens/seed_language/widgets/seed_language_pick
|
||||
import 'package:cake_wallet/src/widgets/seed_widget.dart';
|
||||
import 'package:cake_wallet/src/widgets/base_text_form_field.dart';
|
||||
import 'package:cake_wallet/src/widgets/blockchain_height_widget.dart';
|
||||
import 'package:cake_wallet/src/widgets/base_text_form_field.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/core/validator.dart';
|
||||
|
||||
class WalletRestoreFromSeedForm extends StatefulWidget {
|
||||
WalletRestoreFromSeedForm(
|
||||
@@ -33,11 +36,13 @@ class WalletRestoreFromSeedFormState extends State<WalletRestoreFromSeedForm> {
|
||||
WalletRestoreFromSeedFormState(this.language)
|
||||
: seedWidgetStateKey = GlobalKey<SeedWidgetState>(),
|
||||
blockchainHeightKey = GlobalKey<BlockchainHeightState>(),
|
||||
languageController = TextEditingController();
|
||||
languageController = TextEditingController(),
|
||||
nameTextEditingController = TextEditingController();
|
||||
|
||||
final GlobalKey<SeedWidgetState> seedWidgetStateKey;
|
||||
final GlobalKey<BlockchainHeightState> blockchainHeightKey;
|
||||
final TextEditingController languageController;
|
||||
final TextEditingController nameTextEditingController;
|
||||
String language;
|
||||
|
||||
@override
|
||||
@@ -51,6 +56,11 @@ class WalletRestoreFromSeedFormState extends State<WalletRestoreFromSeedForm> {
|
||||
return Container(
|
||||
padding: EdgeInsets.only(left: 24, right: 24),
|
||||
child: Column(children: [
|
||||
BaseTextFormField(
|
||||
controller: nameTextEditingController,
|
||||
hintText: S.of(context).wallet_name,
|
||||
validator: WalletNameValidator()),
|
||||
Container(height: 20),
|
||||
SeedWidget(
|
||||
key: seedWidgetStateKey, language: language, type: widget.type),
|
||||
if (widget.displayLanguageSelector)
|
||||
|
||||
@@ -15,6 +15,9 @@ import 'package:cake_wallet/src/screens/restore/wallet_restore_from_keys_form.da
|
||||
import 'package:cake_wallet/src/screens/restore/wallet_restore_from_seed_form.dart';
|
||||
import 'package:cake_wallet/src/widgets/primary_button.dart';
|
||||
import 'package:cake_wallet/utils/show_pop_up.dart';
|
||||
import 'package:cake_wallet/core/validator.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/src/widgets/base_text_form_field.dart';
|
||||
|
||||
class WalletRestorePage extends BasePage {
|
||||
WalletRestorePage(this.walletRestoreViewModel)
|
||||
@@ -97,11 +100,13 @@ class WalletRestorePage extends BasePage {
|
||||
.restoreHeightController.text = '';
|
||||
walletRestoreFromSeedFormKey.currentState.blockchainHeightKey.currentState
|
||||
.dateController.text = '';
|
||||
walletRestoreFromSeedFormKey.currentState.nameTextEditingController.text = '';
|
||||
|
||||
walletRestoreFromKeysFormKey.currentState.blockchainHeightKey.currentState
|
||||
.restoreHeightController.text = '';
|
||||
walletRestoreFromKeysFormKey.currentState.blockchainHeightKey.currentState
|
||||
.dateController.text = '';
|
||||
walletRestoreFromKeysFormKey.currentState.nameTextEditingController.text = '';
|
||||
});
|
||||
|
||||
return KeyboardActions(
|
||||
@@ -175,6 +180,8 @@ class WalletRestorePage extends BasePage {
|
||||
credentials['height'] = walletRestoreFromSeedFormKey
|
||||
.currentState.blockchainHeightKey.currentState.height;
|
||||
}
|
||||
|
||||
credentials['name'] = walletRestoreFromSeedFormKey.currentState.nameTextEditingController.text;
|
||||
} else {
|
||||
credentials['address'] =
|
||||
walletRestoreFromKeysFormKey.currentState.addressController.text;
|
||||
@@ -184,6 +191,7 @@ class WalletRestorePage extends BasePage {
|
||||
walletRestoreFromKeysFormKey.currentState.spendKeyController.text;
|
||||
credentials['height'] = walletRestoreFromKeysFormKey
|
||||
.currentState.blockchainHeightKey.currentState.height;
|
||||
credentials['name'] = walletRestoreFromKeysFormKey.currentState.nameTextEditingController.text;
|
||||
}
|
||||
|
||||
return credentials;
|
||||
|
||||
@@ -175,10 +175,10 @@ class WalletListBodyState extends State<WalletListBody> {
|
||||
PrimaryImageButton(
|
||||
onPressed: () {
|
||||
if (isMoneroOnly) {
|
||||
Navigator.of(context).pushNamed(Routes.newWallet, arguments: WalletType.monero);
|
||||
} else {
|
||||
Navigator.of(context).pushNamed(Routes.newWalletType);
|
||||
}
|
||||
Navigator.of(context).pushNamed(Routes.newWallet, arguments: WalletType.monero);
|
||||
} else {
|
||||
Navigator.of(context).pushNamed(Routes.newWalletType);
|
||||
}
|
||||
},
|
||||
image: newWalletImage,
|
||||
text: S.of(context).wallet_list_create_new_wallet,
|
||||
@@ -188,16 +188,16 @@ class WalletListBodyState extends State<WalletListBody> {
|
||||
SizedBox(height: 10.0),
|
||||
PrimaryImageButton(
|
||||
onPressed: () {
|
||||
if (isMoneroOnly) {
|
||||
if (isMoneroOnly) {
|
||||
Navigator
|
||||
.of(context)
|
||||
.pushNamed(
|
||||
Routes.restoreWallet,
|
||||
arguments: widget.walletListViewModel.currentWalletType);
|
||||
} else {
|
||||
Navigator.of(context).pushNamed(Routes.restoreWalletType);
|
||||
}
|
||||
},
|
||||
.of(context)
|
||||
.pushNamed(
|
||||
Routes.restoreWallet,
|
||||
arguments: widget.walletListViewModel.currentWalletType);
|
||||
} else {
|
||||
Navigator.of(context).pushNamed(Routes.restoreWalletType);
|
||||
}
|
||||
},
|
||||
image: restoreWalletImage,
|
||||
text: S.of(context).wallet_list_restore_wallet,
|
||||
color: Theme.of(context).accentTextTheme.caption.color,
|
||||
|
||||
@@ -7,6 +7,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:mobx/mobx.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
import 'package:cake_wallet/wallet_type_utils.dart';
|
||||
import 'package:cake_wallet/wallet_type_utils.dart';
|
||||
|
||||
part 'support_view_model.g.dart';
|
||||
|
||||
@@ -25,16 +26,18 @@ abstract class SupportViewModelBase with Store {
|
||||
title: 'Email',
|
||||
linkTitle: 'support@cakewallet.com',
|
||||
link: 'mailto:support@cakewallet.com'),
|
||||
LinkListItem(
|
||||
title: 'Website',
|
||||
linkTitle: 'cakewallet.com',
|
||||
link: 'https://cakewallet.com'),
|
||||
LinkListItem(
|
||||
title: 'GitHub',
|
||||
icon: 'assets/images/github.png',
|
||||
hasIconColor: true,
|
||||
linkTitle: S.current.apk_update,
|
||||
link: 'https://github.com/cake-tech/cake_wallet/releases'),
|
||||
if (!isMoneroOnly)
|
||||
LinkListItem(
|
||||
title: 'Website',
|
||||
linkTitle: 'cakewallet.com',
|
||||
link: 'https://cakewallet.com'),
|
||||
if (!isMoneroOnly)
|
||||
LinkListItem(
|
||||
title: 'GitHub',
|
||||
icon: 'assets/images/github.png',
|
||||
hasIconColor: true,
|
||||
linkTitle: S.current.apk_update,
|
||||
link: 'https://github.com/cake-tech/cake_wallet/releases'),
|
||||
LinkListItem(
|
||||
title: 'Telegram',
|
||||
icon: 'assets/images/Telegram.png',
|
||||
|
||||
@@ -51,6 +51,7 @@ abstract class WalletRestoreViewModelBase extends WalletCreationVM with Store {
|
||||
WalletCredentials getCredentials(dynamic options) {
|
||||
final password = generateWalletPassword(type);
|
||||
final height = options['height'] as int;
|
||||
name = options['name'] as String;
|
||||
|
||||
if (mode == WalletRestoreMode.seed) {
|
||||
final seed = options['seed'] as String;
|
||||
|
||||
Reference in New Issue
Block a user