mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-17 05:41:29 +02:00
change sync status display mode on long-press (#2780)
* change sync status display mode on long-press * move status toggle function to viewmodel action
This commit is contained in:
@@ -33,6 +33,7 @@ class SyncIndicator extends StatelessWidget {
|
||||
borderRadius: BorderRadius.all(Radius.circular(15)),
|
||||
child: GestureDetector(
|
||||
onTap: onTap,
|
||||
onLongPress: dashboardViewModel.toggleSwitchStatusDisplayMode,
|
||||
child: Container(
|
||||
height: 30,
|
||||
width: syncIndicatorWidth,
|
||||
|
||||
@@ -10,6 +10,7 @@ import 'package:cake_wallet/entities/balance_display_mode.dart';
|
||||
import 'package:cake_wallet/entities/exchange_api_mode.dart';
|
||||
import 'package:cake_wallet/entities/preferences_key.dart';
|
||||
import 'package:cake_wallet/entities/service_status.dart';
|
||||
import 'package:cake_wallet/entities/sync_status_display_mode.dart';
|
||||
import 'package:cake_wallet/exchange/exchange_provider_description.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/monero/monero.dart';
|
||||
@@ -610,6 +611,17 @@ abstract class DashboardViewModelBase with Store {
|
||||
return resp;
|
||||
}
|
||||
|
||||
@action
|
||||
void toggleSwitchStatusDisplayMode() {
|
||||
if (status is SyncingSyncStatus && !((status as SyncingSyncStatus).shouldShowBlocksRemaining())) {
|
||||
if (settingsStore.syncStatusDisplayMode == SyncStatusDisplayMode.eta) {
|
||||
settingsStore.syncStatusDisplayMode = SyncStatusDisplayMode.blocksRemaining;
|
||||
} else {
|
||||
settingsStore.syncStatusDisplayMode = SyncStatusDisplayMode.eta;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@observable
|
||||
late bool backgroundSyncNotificationsEnabled =
|
||||
sharedPreferences.getBool(PreferencesKey.backgroundSyncNotificationsEnabled) ?? false;
|
||||
|
||||
Reference in New Issue
Block a user