Fix legacy seeds not being displayed when polyseed is not supported (#1608)
* Fix legacy seeds not being displayed when polyseed is not supported * fallback to english on Japanese, it errors with empty errorString - probably some kind of normalization issue
cyan committed
Aug 17, 2024 at 04:30 UTC
eef319658a1934c15768b335c7164b491de403f0
8 files changed
+47
-14
cw_monero/lib/api/wallet.dart
+12
-1
@@ -45,12 +45,23 @@ String getSeed() {
45
46
String getSeedLegacy(String? language) {
47
var legacy = monero.Wallet_seed(wptr!, seedOffset: '');
48
+ switch (language) {
49
+ case "Chinese (Traditional)": language = "Chinese (simplified)"; break;
50
+ case "Chinese (Simplified)": language = "Chinese (simplified)"; break;
51
+ case "Korean": language = "English"; break;
52
+ case "Czech": language = "English"; break;
53
+ case "Japanese": language = "English"; break;
54
+ }
55
if (monero.Wallet_status(wptr!) != 0) {
56
monero.Wallet_setSeedLanguage(wptr!, language: language ?? "English");
57
legacy = monero.Wallet_seed(wptr!, seedOffset: '');
58
}
59
if (monero.Wallet_status(wptr!) != 0) {
53
- return monero.Wallet_errorString(wptr!);
60
+ final err = monero.Wallet_errorString(wptr!);
61
+ if (legacy.isNotEmpty) {
62
+ return "$err\n\n$legacy";
63
+ }
64
+ return err;
65
}
66
return legacy;
67
}
cw_monero/pubspec.lock
+5
-4
@@ -575,10 +575,11 @@ packages:
575
polyseed:
576
dependency: "direct main"
577
description:
578
- name: polyseed
579
- sha256: edf28042e7b0b28f97a0469aa98e6e4015937cef6b9340cd6ad2822139c95217
580
- url: "https://pub.dev"
581
- source: hosted
578
+ path: "."
579
+ ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
580
+ resolved-ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
581
+ url: "https://github.com/mrcyjanek/polyseed_dart"
582
+ source: git
583
version: "0.0.5"
584
pool:
585
dependency: transitive
cw_monero/pubspec.yaml
+4
-1
@@ -19,7 +19,10 @@ dependencies:
19
flutter_mobx: ^2.0.6+1
20
intl: ^0.18.0
21
encrypt: ^5.0.1
22
- polyseed: ^0.0.5
22
+ polyseed:
23
+ git:
24
+ url: https://github.com/mrcyjanek/polyseed_dart
25
+ ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
26
cw_core:
27
path: ../cw_core
28
monero:
cw_wownero/lib/api/wallet.dart
+12
-1
@@ -47,12 +47,23 @@ String getSeed() {
47
48
String getSeedLegacy(String? language) {
49
var legacy = wownero.Wallet_seed(wptr!, seedOffset: '');
50
+ switch (language) {
51
+ case "Chinese (Traditional)": language = "Chinese (simplified)"; break;
52
+ case "Chinese (Simplified)": language = "Chinese (simplified)"; break;
53
+ case "Korean": language = "English"; break;
54
+ case "Czech": language = "English"; break;
55
+ case "Japanese": language = "English"; break;
56
+ }
57
if (wownero.Wallet_status(wptr!) != 0) {
58
wownero.Wallet_setSeedLanguage(wptr!, language: language ?? "English");
59
legacy = wownero.Wallet_seed(wptr!, seedOffset: '');
60
}
61
if (wownero.Wallet_status(wptr!) != 0) {
55
- return wownero.Wallet_errorString(wptr!);
62
+ final err = wownero.Wallet_errorString(wptr!);
63
+ if (legacy.isNotEmpty) {
64
+ return "$err\n\n$legacy";
65
+ }
66
+ return err;
67
}
68
return legacy;
69
}
cw_wownero/pubspec.lock
+5
-4
@@ -567,10 +567,11 @@ packages:
567
polyseed:
568
dependency: "direct main"
569
description:
570
- name: polyseed
571
- sha256: edf28042e7b0b28f97a0469aa98e6e4015937cef6b9340cd6ad2822139c95217
572
- url: "https://pub.dev"
573
- source: hosted
570
+ path: "."
571
+ ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
572
+ resolved-ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
573
+ url: "https://github.com/mrcyjanek/polyseed_dart"
574
+ source: git
575
version: "0.0.5"
576
pool:
577
dependency: transitive
cw_wownero/pubspec.yaml
+4
-1
@@ -19,7 +19,10 @@ dependencies:
19
flutter_mobx: ^2.0.6+1
20
intl: ^0.18.0
21
encrypt: ^5.0.1
22
- polyseed: ^0.0.5
22
+ polyseed:
23
+ git:
24
+ url: https://github.com/mrcyjanek/polyseed_dart
25
+ ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
26
cw_core:
27
path: ../cw_core
28
monero:
lib/src/widgets/seed_language_picker.dart
+1
-1
@@ -17,7 +17,7 @@ class SeedLanguagePickerOption {
17
final List<SeedLanguagePickerOption> seedLanguages = [
18
SeedLanguagePickerOption('English', S.current.seed_language_english,
19
Image.asset('assets/images/flags/usa.png'), [SeedType.legacy, SeedType.polyseed]),
20
- SeedLanguagePickerOption('Chinese (simplified)', S.current.seed_language_chinese,
20
+ SeedLanguagePickerOption('Chinese (Simplified)', S.current.seed_language_chinese,
21
Image.asset('assets/images/flags/chn.png'), [SeedType.legacy, SeedType.polyseed]),
22
SeedLanguagePickerOption('Chinese (Traditional)', S.current.seed_language_chinese_traditional,
23
Image.asset('assets/images/flags/chn.png'), [SeedType.polyseed]),
pubspec_base.yaml
+4
-1
@@ -94,7 +94,10 @@ dependencies:
94
# ref: main
95
socks5_proxy: ^1.0.4
96
flutter_svg: ^2.0.9
97
- polyseed: ^0.0.5
97
+ polyseed:
98
+ git:
99
+ url: https://github.com/mrcyjanek/polyseed_dart
100
+ ref: f9adc68dbf879fefadeae8e86d1c2983f5a2cc3f
101
nostr_tools: ^1.0.9
102
solana: ^0.30.1
103
bitcoin_base: