Fix payments from HDWallets
This commit is contained in:
parent
cd71b0eb3d
commit
f05c335073
|
@ -79,7 +79,8 @@ class WalletsProfilesProvider with ChangeNotifier {
|
||||||
dewif: dewif,
|
dewif: dewif,
|
||||||
password: pinCode,
|
password: pinCode,
|
||||||
comment: payComment.text,
|
comment: payComment.text,
|
||||||
derivation: derivation);
|
derivation: derivation,
|
||||||
|
lang: appLang);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
@ -148,6 +148,9 @@ class ConfirmStoreWallet extends StatelessWidget with ChangeNotifier {
|
||||||
await Future.delayed(
|
await Future.delayed(
|
||||||
const Duration(milliseconds: 50));
|
const Duration(milliseconds: 50));
|
||||||
_myWalletProvider.rebuildWidget();
|
_myWalletProvider.rebuildWidget();
|
||||||
|
_generateWalletProvider.pin.text = '';
|
||||||
|
_generateWalletProvider
|
||||||
|
.mnemonicController.text = '';
|
||||||
Navigator.pushAndRemoveUntil(context,
|
Navigator.pushAndRemoveUntil(context,
|
||||||
MaterialPageRoute(builder: (context) {
|
MaterialPageRoute(builder: (context) {
|
||||||
return UnlockingWallet(
|
return UnlockingWallet(
|
||||||
|
|
|
@ -34,9 +34,22 @@ class GenerateFastChestScreen extends StatelessWidget {
|
||||||
_generateWalletProvider.pin.text = randomSecretCode(pinLength);
|
_generateWalletProvider.pin.text = randomSecretCode(pinLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Scaffold(
|
return WillPopScope(
|
||||||
|
onWillPop: () {
|
||||||
|
_generateWalletProvider.pin.text = '';
|
||||||
|
_generateWalletProvider.mnemonicController.text = '';
|
||||||
|
return Future<bool>.value(true);
|
||||||
|
},
|
||||||
|
child: Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
toolbarHeight: 60 * ratio,
|
toolbarHeight: 60 * ratio,
|
||||||
|
leading: IconButton(
|
||||||
|
icon: const Icon(Icons.arrow_back, color: Colors.black),
|
||||||
|
onPressed: () {
|
||||||
|
_generateWalletProvider.pin.text = '';
|
||||||
|
_generateWalletProvider.mnemonicController.text = '';
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
}),
|
||||||
title: const SizedBox(
|
title: const SizedBox(
|
||||||
height: 22,
|
height: 22,
|
||||||
child: Text('Générer un trousseau'),
|
child: Text('Générer un trousseau'),
|
||||||
|
@ -61,95 +74,96 @@ class GenerateFastChestScreen extends StatelessWidget {
|
||||||
floattingYellow, //smoothYellow, //Color.fromARGB(500, 204, 255, 255),
|
floattingYellow, //smoothYellow, //Color.fromARGB(500, 204, 255, 255),
|
||||||
))),
|
))),
|
||||||
body: Builder(
|
body: Builder(
|
||||||
builder: (ctx) => SafeArea(
|
builder: (ctx) => SafeArea(
|
||||||
child: Column(children: <Widget>[
|
child: Column(children: <Widget>[
|
||||||
const SizedBox(height: 20),
|
const SizedBox(height: 20),
|
||||||
toolTips(_toolTipSentence, 'Phrase de restauration:',
|
toolTips(_toolTipSentence, 'Phrase de restauration:',
|
||||||
"Notez et gardez cette phrase précieusement sur un papier, elle vous servira à restaurer votre portefeuille sur un autre appareil"),
|
"Notez et gardez cette phrase précieusement sur un papier, elle vous servira à restaurer votre portefeuille sur un autre appareil"),
|
||||||
TextField(
|
TextField(
|
||||||
enabled: false,
|
enabled: false,
|
||||||
controller: _generateWalletProvider.mnemonicController,
|
controller: _generateWalletProvider.mnemonicController,
|
||||||
maxLines: 3,
|
maxLines: 3,
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
decoration: const InputDecoration(
|
decoration: const InputDecoration(
|
||||||
contentPadding: EdgeInsets.all(15.0),
|
contentPadding: EdgeInsets.all(15.0),
|
||||||
),
|
),
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 22.0,
|
fontSize: 22.0,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
fontWeight: FontWeight.w400)),
|
fontWeight: FontWeight.w400)),
|
||||||
const SizedBox(height: 8),
|
const SizedBox(height: 8),
|
||||||
toolTips(_toolTipSecret, 'Code secret:',
|
toolTips(_toolTipSecret, 'Code secret:',
|
||||||
"Retenez bien votre code secret, il vous sera demandé à chaque paiement, ainsi que pour configurer votre portefeuille"),
|
"Retenez bien votre code secret, il vous sera demandé à chaque paiement, ainsi que pour configurer votre portefeuille"),
|
||||||
Stack(
|
Stack(
|
||||||
alignment: Alignment.centerRight,
|
alignment: Alignment.centerRight,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
TextField(
|
TextField(
|
||||||
key: const Key('generatedPin'),
|
key: const Key('generatedPin'),
|
||||||
enabled: false,
|
enabled: false,
|
||||||
controller: _generateWalletProvider.pin,
|
controller: _generateWalletProvider.pin,
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
decoration: const InputDecoration(),
|
decoration: const InputDecoration(),
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 30.0,
|
fontSize: 30.0,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
fontWeight: FontWeight.bold)),
|
fontWeight: FontWeight.bold)),
|
||||||
IconButton(
|
IconButton(
|
||||||
icon: const Icon(Icons.replay),
|
icon: const Icon(Icons.replay),
|
||||||
color: orangeC,
|
color: orangeC,
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
_generateWalletProvider.changePinCode(reload: true);
|
_generateWalletProvider.changePinCode(reload: true);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
const SizedBox(height: 20),
|
const SizedBox(height: 20),
|
||||||
ElevatedButton(
|
ElevatedButton(
|
||||||
key: const Key('storeKeychain'),
|
key: const Key('storeKeychain'),
|
||||||
style: ElevatedButton.styleFrom(
|
style: ElevatedButton.styleFrom(
|
||||||
primary: yellowC, // background
|
primary: yellowC, // background
|
||||||
onPrimary: Colors.black, // foreground
|
onPrimary: Colors.black, // foreground
|
||||||
),
|
),
|
||||||
onPressed: _generateWalletProvider.walletIsGenerated
|
onPressed: _generateWalletProvider.walletIsGenerated
|
||||||
? () async {
|
? () async {
|
||||||
_generateWalletProvider.nbrWord =
|
_generateWalletProvider.nbrWord =
|
||||||
_generateWalletProvider.getRandomInt();
|
_generateWalletProvider.getRandomInt();
|
||||||
_generateWalletProvider.actualWallet =
|
_generateWalletProvider.actualWallet = await Dewif()
|
||||||
await Dewif().generateDewif(
|
.generateDewif(
|
||||||
_generateWalletProvider
|
_generateWalletProvider.generatedMnemonic!,
|
||||||
.generatedMnemonic!,
|
_generateWalletProvider.pin.text,
|
||||||
_generateWalletProvider.pin.text,
|
lang: appLang);
|
||||||
lang: appLang);
|
await Navigator.push(
|
||||||
await Navigator.push(
|
|
||||||
context,
|
|
||||||
MaterialPageRoute(builder: (context) {
|
|
||||||
return ConfirmStoreWallet(
|
|
||||||
generatedMnemonic:
|
|
||||||
_generateWalletProvider
|
|
||||||
.generatedMnemonic,
|
|
||||||
generatedWallet: _generateWalletProvider
|
|
||||||
.actualWallet);
|
|
||||||
}),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
: null,
|
|
||||||
child: const Text('Enregistrer ce trousseau',
|
|
||||||
style: TextStyle(fontSize: 20))),
|
|
||||||
const SizedBox(height: 20),
|
|
||||||
GestureDetector(
|
|
||||||
onTap: () {
|
|
||||||
Navigator.push(
|
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) {
|
MaterialPageRoute(builder: (context) {
|
||||||
return PrintWallet(
|
return ConfirmStoreWallet(
|
||||||
_generateWalletProvider.generatedMnemonic);
|
generatedMnemonic:
|
||||||
|
_generateWalletProvider.generatedMnemonic,
|
||||||
|
generatedWallet:
|
||||||
|
_generateWalletProvider.actualWallet);
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
},
|
}
|
||||||
child: const Icon(Icons.print))
|
: null,
|
||||||
]),
|
child: const Text('Enregistrer ce trousseau',
|
||||||
)));
|
style: TextStyle(fontSize: 20))),
|
||||||
|
const SizedBox(height: 20),
|
||||||
|
GestureDetector(
|
||||||
|
onTap: () {
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder: (context) {
|
||||||
|
return PrintWallet(
|
||||||
|
_generateWalletProvider.generatedMnemonic);
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: const Icon(Icons.print))
|
||||||
|
]),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget toolTips(_key, _text, _message) {
|
Widget toolTips(_key, _text, _message) {
|
||||||
|
|
|
@ -192,6 +192,7 @@ class ImportWalletScreen extends StatelessWidget {
|
||||||
}),
|
}),
|
||||||
ModalRoute.withName('/'),
|
ModalRoute.withName('/'),
|
||||||
);
|
);
|
||||||
|
_generateWalletProvider.resetCesiumImportView();
|
||||||
}
|
}
|
||||||
: null,
|
: null,
|
||||||
child: const Text(
|
child: const Text(
|
||||||
|
|
|
@ -301,7 +301,7 @@ packages:
|
||||||
name: durt
|
name: durt
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.1.5+2"
|
version: "0.1.5+7"
|
||||||
fake_async:
|
fake_async:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
|
@ -62,7 +62,7 @@ dependencies:
|
||||||
pull_to_refresh: ^2.0.0
|
pull_to_refresh: ^2.0.0
|
||||||
dio: ^4.0.4
|
dio: ^4.0.4
|
||||||
desktop_window: ^0.4.0
|
desktop_window: ^0.4.0
|
||||||
durt: ^0.1.5+2
|
durt: ^0.1.5+7
|
||||||
package_info_plus: ^1.3.0
|
package_info_plus: ^1.3.0
|
||||||
|
|
||||||
flutter_icons:
|
flutter_icons:
|
||||||
|
|
Loading…
Reference in New Issue