mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-23 06:38:35 +02:00
sync status eta (#1701)
* sync status eta * other necessary changes * feat: Enhance Sync ETA display mode - Enhance block rate calculation with weighted averages(accounts for network flunctuations and sync speed of more recent blocks while calculating eta, basically giving us more accuracy) - Add option to switch between ETA and blocks remaining display in display settings - Add placeholder ETA while gathering block data * chore: Listen to smaller changes in eta --------- Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com> Co-authored-by: Blazebrain <davidadegoke16@gmail.com>
This commit is contained in:
co-authored by
Omar Hatem
Blazebrain
parent
013211e7a6
commit
c8dca29f68
@@ -1,11 +1,26 @@
|
||||
import 'package:cake_wallet/entities/sync_status_display_mode.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cw_core/sync_status.dart';
|
||||
|
||||
String syncStatusTitle(SyncStatus syncStatus) {
|
||||
String syncStatusTitle(SyncStatus syncStatus, SyncStatusDisplayMode syncStatusDisplayMode) {
|
||||
if (syncStatus is SyncingSyncStatus) {
|
||||
return syncStatus.blocksLeft == 1
|
||||
? S.current.block_remaining
|
||||
: S.current.Blocks_remaining('${syncStatus.blocksLeft}');
|
||||
if (syncStatus.blocksLeft == 1) {
|
||||
return S.current.block_remaining;
|
||||
}
|
||||
|
||||
// Check user preference for sync status display
|
||||
if (syncStatusDisplayMode == SyncStatusDisplayMode.eta) {
|
||||
// Get ETA with placeholder while gathering data
|
||||
String eta = syncStatus.getFormattedEtaWithPlaceholder() ?? '';
|
||||
|
||||
if (eta.isEmpty) {
|
||||
return S.current.Blocks_remaining('${syncStatus.blocksLeft}');
|
||||
} else {
|
||||
return "${syncStatus.formattedProgress()} - ${S.current.eta} $eta";
|
||||
}
|
||||
} else {
|
||||
return S.current.Blocks_remaining('${syncStatus.blocksLeft}');
|
||||
}
|
||||
}
|
||||
|
||||
if (syncStatus is SyncedTipSyncStatus) {
|
||||
|
||||
Reference in New Issue
Block a user