@@ -59,7 +59,7 @@ mod main_widget;
59
59
enum ActiveDialog {
60
60
None ,
61
61
WalletCreate {
62
- generated_mnemonic : wallet_controller :: mnemonic :: Mnemonic ,
62
+ wallet_args : WalletArgs ,
63
63
wallet_type : WalletType ,
64
64
} ,
65
65
WalletRecover {
@@ -163,7 +163,7 @@ impl ImportOrCreate {
163
163
}
164
164
}
165
165
166
- #[ derive( Debug , Clone ) ]
166
+ #[ derive( Debug , Clone , PartialEq , Eq ) ]
167
167
pub enum WalletArgs {
168
168
Software {
169
169
mnemonic : String ,
@@ -276,11 +276,20 @@ impl MainWindow {
276
276
MainWindowMessage :: MenuMessage ( menu_message) => match menu_message {
277
277
MenuMessage :: NoOp => Command :: none ( ) ,
278
278
MenuMessage :: CreateNewWallet { wallet_type } => {
279
- let generated_mnemonic =
280
- wallet_controller:: mnemonic:: generate_new_mnemonic ( self . language ) ;
279
+ let wallet_args = match wallet_type {
280
+ WalletType :: Hot | WalletType :: Cold => WalletArgs :: Software {
281
+ mnemonic : wallet_controller:: mnemonic:: generate_new_mnemonic (
282
+ self . language ,
283
+ )
284
+ . to_string ( ) ,
285
+ } ,
286
+ #[ cfg( feature = "trezor" ) ]
287
+ WalletType :: Trezor => WalletArgs :: Trezor ,
288
+ } ;
289
+
281
290
self . active_dialog = ActiveDialog :: WalletCreate {
282
- generated_mnemonic,
283
291
wallet_type,
292
+ wallet_args,
284
293
} ;
285
294
Command :: none ( )
286
295
}
@@ -801,13 +810,13 @@ impl MainWindow {
801
810
ActiveDialog :: None => Text :: new ( "Nothing to show" ) . into ( ) ,
802
811
803
812
ActiveDialog :: WalletCreate {
804
- generated_mnemonic,
805
813
wallet_type,
814
+ wallet_args,
806
815
} => {
807
816
let wallet_type = * wallet_type;
808
- match wallet_type {
809
- WalletType :: Hot | WalletType :: Cold => wallet_mnemonic_dialog (
810
- Some ( generated_mnemonic . clone ( ) ) ,
817
+ match wallet_args {
818
+ WalletArgs :: Software { mnemonic } => wallet_mnemonic_dialog (
819
+ Some ( mnemonic . clone ( ) ) ,
811
820
Box :: new ( move |mnemonic| MainWindowMessage :: ImportWalletMnemonic {
812
821
args : WalletArgs :: Software { mnemonic } ,
813
822
import : ImportOrCreate :: Create ,
@@ -817,7 +826,7 @@ impl MainWindow {
817
826
)
818
827
. into ( ) ,
819
828
#[ cfg( feature = "trezor" ) ]
820
- WalletType :: Trezor => hw_wallet_create_dialog (
829
+ WalletArgs :: Trezor => hw_wallet_create_dialog (
821
830
Box :: new ( move || MainWindowMessage :: ImportWalletMnemonic {
822
831
args : WalletArgs :: Trezor ,
823
832
import : ImportOrCreate :: Create ,
0 commit comments