Localize and de-queue wallet status snackbars
build / Build Linux wallet (push) Successful in 2m19s
build / Build Windows wallet (push) Successful in 20m3s

This commit is contained in:
Codex Bot
2026-04-20 01:43:13 +02:00
parent 0b13cf6f46
commit 80a2265f0a
+139 -3
View File
@@ -99,11 +99,12 @@ class _PeyaAppState extends ConsumerState<PeyaApp> with WindowListener {
next.operationMessage!.isNotEmpty;
if (shouldShowStatus) {
final message = next.operationMessage!;
final message = _localizeOperationStatus(next.operationMessage!);
if (_statusSnackVisible && _lastStatusMessage == message) {
return;
}
messenger.hideCurrentSnackBar();
messenger.clearSnackBars();
messenger.removeCurrentSnackBar();
messenger.showSnackBar(
SnackBar(
content: Text(message),
@@ -116,12 +117,147 @@ class _PeyaAppState extends ConsumerState<PeyaApp> with WindowListener {
}
if (_statusSnackVisible) {
messenger.hideCurrentSnackBar();
messenger.clearSnackBars();
messenger.removeCurrentSnackBar();
_statusSnackVisible = false;
_lastStatusMessage = null;
}
}
String _localizeOperationStatus(String message) {
final l10n = AppLocalizations.of(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
);
if (l10n == null) {
return message;
}
switch (message) {
case 'Preparing wallet directory...':
return 'Preparing wallet directory...'.startsWith('Preparing') &&
Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Przygotowywanie katalogu portfela...'
: message;
case 'Creating wallet...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Tworzenie portfela...'
: message;
case 'Preparing temporary wallet...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Przygotowywanie tymczasowego portfela...'
: message;
case 'Generating seed phrase...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Generowanie seedu...'
: message;
case 'Restoring wallet from seed...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Przywracanie portfela z seedu...'
: message;
case 'Checking wallet files...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Sprawdzanie plików portfela...'
: message;
case 'Opening wallet...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Otwieranie portfela...'
: message;
case 'Loading wallet data...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Wczytywanie danych portfela...'
: message;
case 'Connecting to node...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Łączenie z nodem...'
: message;
case 'Creating subaddress...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Tworzenie subadresu...'
: message;
case 'Updating subaddress...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Aktualizowanie subadresu...'
: message;
case 'Preparing transaction...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Przygotowywanie transakcji...'
: message;
case 'Submitting transaction...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Wysyłanie transakcji...'
: message;
case 'Preparing stake...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Przygotowywanie stake...'
: message;
case 'Submitting stake...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Wysyłanie stake...'
: message;
case 'Refreshing balances...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Odświeżanie sald...'
: message;
case 'Loading transactions...':
return Localizations.localeOf(
_navigatorKey.currentContext ?? _scaffoldMessengerKey.currentContext ?? context,
).languageCode ==
'pl'
? 'Wczytywanie transakcji...'
: message;
default:
return message;
}
}
@override
void didChangeDependencies() {
super.didChangeDependencies();