diff options
author | Lisandro Pérez Meyer <lpmeyer@ics.com> | 2023-11-16 22:44:34 -0300 |
---|---|---|
committer | Lisandro Perez Meyer <lpmeyer@ics.com> | 2023-11-17 01:48:26 +0000 |
commit | 4d77bab5a0f698943d1abf74482eecef7cc95f08 (patch) | |
tree | 49e0a590b5903cc7553b1a4fc3cb2fbcd13cebf4 /lib/data/data_providers | |
parent | 6a00ac1f8613048b5c1f7ecdbd1adcbbcfdca5ed (diff) |
Bug fixes. Fixed Fan mode selection off state bug.
Fixes ICS' internal AGL-48,49,50.
Original from Sabin Sajeevan <ssajeevan@ics.com>
Bug-AGL: SPEC-4971
Change-Id: I66c875551a69a1b53eee2d6e1d3fa725b20ff41b
Signed-off-by: Lisandro Pérez Meyer <lpmeyer@ics.com>
Diffstat (limited to 'lib/data/data_providers')
-rw-r--r-- | lib/data/data_providers/app_provider.dart | 6 | ||||
-rw-r--r-- | lib/data/data_providers/time_notifier.dart | 24 |
2 files changed, 30 insertions, 0 deletions
diff --git a/lib/data/data_providers/app_provider.dart b/lib/data/data_providers/app_provider.dart index c528a1a..80416a4 100644 --- a/lib/data/data_providers/app_provider.dart +++ b/lib/data/data_providers/app_provider.dart @@ -1,6 +1,7 @@ import 'package:flutter_ics_homescreen/data/data_providers/datetime_notifier.dart'; import 'package:flutter_ics_homescreen/data/data_providers/hybrid_notifier.dart'; import 'package:flutter_ics_homescreen/data/data_providers/signal_notifier.dart'; +import 'package:flutter_ics_homescreen/data/data_providers/time_notifier.dart'; import 'package:flutter_ics_homescreen/data/data_providers/units_notifier.dart'; import 'package:flutter_ics_homescreen/data/data_providers/audio_notifier.dart'; import 'package:flutter_ics_homescreen/data/data_providers/users_notifier.dart'; @@ -61,3 +62,8 @@ final dateTimeStateProvider = final hybridtateProvider = StateNotifierProvider<HybridNotifier, Hybrid>((ref) { return HybridNotifier(const Hybrid.initial()); }); + +final currentTimeProvider = + StateNotifierProvider<CurrentTimeNotifier, DateTime>((ref) { + return CurrentTimeNotifier(); +}); diff --git a/lib/data/data_providers/time_notifier.dart b/lib/data/data_providers/time_notifier.dart new file mode 100644 index 0000000..9737b2b --- /dev/null +++ b/lib/data/data_providers/time_notifier.dart @@ -0,0 +1,24 @@ +import 'dart:async'; + +import 'package:flutter_ics_homescreen/export.dart'; + +class CurrentTimeNotifier extends StateNotifier<DateTime> { + CurrentTimeNotifier() : super(DateTime.now()) { + if (!_hasInitialized) { + _initializeTimer(); + _hasInitialized = true; + } + } + + bool _hasInitialized = false; + + void _initializeTimer() { + Timer.periodic(const Duration(seconds: 1), (timer) { + state = state.add(const Duration(seconds: 1)); + }); + } + + void setCurrentTime(DateTime newTime) { + state = newTime; + } +} |