mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-22 11:39:22 +00:00
CAKE-194 | added pre seed page to app; called pre seed page when creating new wallet from welcome an wallet list pages; added images to assets
This commit is contained in:
parent
1afe4255a7
commit
3ebc0627e7
11 changed files with 84 additions and 3 deletions
BIN
assets/images/2.0x/pre_seed_dark.png
Executable file
BIN
assets/images/2.0x/pre_seed_dark.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 182 KiB |
BIN
assets/images/2.0x/pre_seed_light.png
Executable file
BIN
assets/images/2.0x/pre_seed_light.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 96 KiB |
BIN
assets/images/3.0x/pre_seed_dark.png
Executable file
BIN
assets/images/3.0x/pre_seed_dark.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 374 KiB |
BIN
assets/images/3.0x/pre_seed_light.png
Executable file
BIN
assets/images/3.0x/pre_seed_light.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 196 KiB |
BIN
assets/images/pre_seed_dark.png
Executable file
BIN
assets/images/pre_seed_dark.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 56 KiB |
BIN
assets/images/pre_seed_light.png
Executable file
BIN
assets/images/pre_seed_light.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 31 KiB |
|
@ -21,6 +21,7 @@ import 'package:cake_wallet/src/screens/nodes/nodes_list_page.dart';
|
|||
import 'package:cake_wallet/src/screens/pin_code/pin_code_widget.dart';
|
||||
import 'package:cake_wallet/src/screens/rescan/rescan_page.dart';
|
||||
import 'package:cake_wallet/src/screens/restore/wallet_restore_page.dart';
|
||||
import 'package:cake_wallet/src/screens/seed/pre_seed_page.dart';
|
||||
import 'package:cake_wallet/src/screens/seed/wallet_seed_page.dart';
|
||||
import 'package:cake_wallet/src/screens/send/send_template_page.dart';
|
||||
import 'package:cake_wallet/src/screens/settings/change_language.dart';
|
||||
|
@ -405,4 +406,6 @@ Future setup(
|
|||
transactionInfo,
|
||||
getIt.get<SettingsStore>().shouldSaveRecipientAddress,
|
||||
transactionDescriptionBox));
|
||||
|
||||
getIt.registerFactory(() => PreSeedPage());
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ import 'package:cake_wallet/entities/contact_record.dart';
|
|||
import 'package:cake_wallet/entities/transaction_description.dart';
|
||||
import 'package:cake_wallet/src/screens/pin_code/pin_code_widget.dart';
|
||||
import 'package:cake_wallet/src/screens/restore/wallet_restore_page.dart';
|
||||
import 'package:cake_wallet/src/screens/seed/pre_seed_page.dart';
|
||||
import 'package:cake_wallet/store/settings_store.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
@ -64,14 +65,14 @@ Route<dynamic> createRoute(RouteSettings settings) {
|
|||
(PinCodeState<PinCodeWidget> context, dynamic _) async {
|
||||
try {
|
||||
context.changeProcessText(
|
||||
'Creating new wallet'); // FIXME: Unnamed constant
|
||||
S.current.creating_new_wallet);
|
||||
final newWalletVM =
|
||||
getIt.get<WalletNewVM>(param1: WalletType.monero);
|
||||
await newWalletVM.create(
|
||||
options: 'English'); // FIXME: Unnamed constant
|
||||
context.hideProgressText();
|
||||
await Navigator.of(context.context)
|
||||
.pushNamed(Routes.seed, arguments: true);
|
||||
.pushNamed(Routes.preSeed);
|
||||
} catch (e) {
|
||||
context.changeProcessText('Error: ${e.toString()}');
|
||||
}
|
||||
|
@ -322,6 +323,10 @@ Route<dynamic> createRoute(RouteSettings settings) {
|
|||
return MaterialPageRoute<void>(
|
||||
builder: (_) => getIt.get<LanguageListPage>());
|
||||
|
||||
case Routes.preSeed:
|
||||
return MaterialPageRoute<void>(
|
||||
builder: (_) => getIt.get<PreSeedPage>());
|
||||
|
||||
default:
|
||||
return MaterialPageRoute<void>(
|
||||
builder: (_) => Scaffold(
|
||||
|
|
|
@ -47,4 +47,5 @@ class Routes {
|
|||
static const exchangeTemplate = '/exchange_template';
|
||||
static const restoreWalletType = '/restore_wallet_type';
|
||||
static const restoreWallet = '/restore_wallet';
|
||||
static const preSeed = '/pre_seed';
|
||||
}
|
72
lib/src/screens/seed/pre_seed_page.dart
Normal file
72
lib/src/screens/seed/pre_seed_page.dart
Normal file
|
@ -0,0 +1,72 @@
|
|||
import 'package:cake_wallet/di.dart';
|
||||
import 'package:cake_wallet/routes.dart';
|
||||
import 'package:cake_wallet/store/settings_store.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/src/widgets/primary_button.dart';
|
||||
import 'package:cake_wallet/src/screens/base_page.dart';
|
||||
|
||||
class PreSeedPage extends BasePage {
|
||||
static final imageLight = Image.asset('assets/images/pre_seed_light.png');
|
||||
static final imageDark = Image.asset('assets/images/pre_seed_dark.png');
|
||||
|
||||
@override
|
||||
Widget leading(BuildContext context) => null;
|
||||
|
||||
@override
|
||||
String get title => 'IMPORTANT';
|
||||
|
||||
@override
|
||||
Widget body(BuildContext context) {
|
||||
final image =
|
||||
getIt.get<SettingsStore>().isDarkTheme ? imageDark : imageLight;
|
||||
|
||||
return Container(
|
||||
padding: EdgeInsets.all(24),
|
||||
child: Column(
|
||||
children: [
|
||||
Flexible(
|
||||
flex: 2,
|
||||
child: AspectRatio(
|
||||
aspectRatio: 1,
|
||||
child: FittedBox(child: image, fit: BoxFit.contain))),
|
||||
Flexible(
|
||||
flex: 3,
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Padding(
|
||||
padding:
|
||||
EdgeInsets.only(top: 70, left: 16, right: 16),
|
||||
child: Text(
|
||||
'On the next page you will see a series of 25 words. This is your unique and private seed and it is the ONLY way to recover your wallet in case of loss or malfunction. It is YOUR responsibility to write it down and store it in a safe place outside of the Cake Wallet app.',
|
||||
textAlign: TextAlign.center,
|
||||
style: TextStyle(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: Theme.of(context)
|
||||
.primaryTextTheme
|
||||
.caption
|
||||
.color),
|
||||
),
|
||||
),
|
||||
PrimaryButton(
|
||||
onPressed: () =>
|
||||
Navigator.of(context).popAndPushNamed(Routes.seed,
|
||||
arguments: true),
|
||||
text: 'I understand. Show me my seed',
|
||||
color: Theme.of(context)
|
||||
.accentTextTheme
|
||||
.body2
|
||||
.color,
|
||||
textColor: Colors.white)
|
||||
],
|
||||
)
|
||||
)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
}
|
|
@ -243,7 +243,7 @@ class WalletListBodyState extends State<WalletListBody> {
|
|||
changeProcessText(S.of(context).creating_new_wallet);
|
||||
await widget.walletListViewModel.walletNewVM.create(options: 'English'); // FIXME: Unnamed constant
|
||||
hideProgressText();
|
||||
await Navigator.of(context).pushNamed(Routes.seed, arguments: true);
|
||||
await Navigator.of(context).pushNamed(Routes.preSeed);
|
||||
} catch(e) {
|
||||
changeProcessText(S.of(context).creating_new_wallet_error(e.toString()));
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue