summaryrefslogtreecommitdiffstats
path: root/lib/data
diff options
context:
space:
mode:
authorLisandro Pérez Meyer <lpmeyer@ics.com>2023-11-16 22:44:34 -0300
committerLisandro Perez Meyer <lpmeyer@ics.com>2023-11-17 01:48:26 +0000
commit4d77bab5a0f698943d1abf74482eecef7cc95f08 (patch)
tree49e0a590b5903cc7553b1a4fc3cb2fbcd13cebf4 /lib/data
parent6a00ac1f8613048b5c1f7ecdbd1adcbbcfdca5ed (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')
-rw-r--r--lib/data/data_providers/app_provider.dart6
-rw-r--r--lib/data/data_providers/time_notifier.dart24
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;
+ }
+}