Skip to content

Commit 8e45d19

Browse files
committed
requested changes done
1 parent 82010b8 commit 8e45d19

File tree

4 files changed

+17
-46
lines changed

4 files changed

+17
-46
lines changed

lib/app/modules/addOrUpdateAlarm/views/max_snooze_count_tile.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,27 @@ import 'package:ultimate_alarm_clock/app/utils/constants.dart';
77
import 'package:ultimate_alarm_clock/app/utils/utils.dart';
88

99
class MaxSnoozeCountTile extends StatelessWidget {
10-
const MaxSnoozeCountTile({
10+
MaxSnoozeCountTile({
1111
super.key,
1212
required this.controller,
1313
required this.themeController,
1414
});
1515

1616
final AddOrUpdateAlarmController controller;
1717
final ThemeController themeController;
18+
int initialCount = 0;
1819

1920
@override
2021
Widget build(BuildContext context) {
21-
int count;
2222
return Obx(
2323
() => ListTile(
2424
onTap: () {
2525
Utils.hapticFeedback();
26-
count = controller.maxSnoozeCount.value;
26+
initialCount = controller.maxSnoozeCount.value;
2727
Get.defaultDialog(
2828
onWillPop: () async {
2929
Get.back();
30-
controller.maxSnoozeCount.value = count;
30+
controller.maxSnoozeCount.value = initialCount;
3131
return true;
3232
},
3333
titlePadding: const EdgeInsets.only(top: 20),

lib/app/modules/addOrUpdateAlarm/views/snooze_settings_tile.dart

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,25 @@ import 'package:ultimate_alarm_clock/app/utils/constants.dart';
77
import 'package:ultimate_alarm_clock/app/utils/utils.dart';
88

99
class SnoozeSettingsTile extends StatelessWidget {
10-
const SnoozeSettingsTile({
10+
SnoozeSettingsTile({
1111
super.key,
1212
required this.controller,
1313
required this.themeController,
1414
});
1515

1616
final AddOrUpdateAlarmController controller;
1717
final ThemeController themeController;
18+
int initialDuration = 0;
19+
int initialCount = 0;
1820

1921
@override
2022
Widget build(BuildContext context) {
21-
int duration;
22-
int count;
2323
return Obx(
2424
() => ListTile(
2525
onTap: () {
2626
Utils.hapticFeedback();
27-
duration = controller.snoozeDuration.value;
28-
count = controller.maxSnoozeCount.value;
27+
initialDuration = controller.snoozeDuration.value;
28+
initialCount = controller.maxSnoozeCount.value;
2929

3030
Get.dialog(
3131
Dialog.fullscreen(
@@ -44,8 +44,8 @@ class SnoozeSettingsTile extends StatelessWidget {
4444
),
4545
onPressed: () {
4646
Utils.hapticFeedback();
47-
controller.snoozeDuration.value = duration;
48-
controller.maxSnoozeCount.value = count;
47+
controller.snoozeDuration.value = initialDuration;
48+
controller.maxSnoozeCount.value = initialCount;
4949
Get.back();
5050
},
5151
),

lib/app/modules/alarmRing/controllers/alarm_ring_controller.dart

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -271,9 +271,9 @@ class AlarmControlController extends GetxController {
271271
}
272272

273273
if (currentlyRingingAlarm.value.isarId > 0) {
274-
final dbMaxSnoozeCount = await getMaxSnoozeCountFromDatabase(currentlyRingingAlarm.value.isarId);
275-
if (dbMaxSnoozeCount != null && dbMaxSnoozeCount != currentlyRingingAlarm.value.maxSnoozeCount) {
276-
currentlyRingingAlarm.value.maxSnoozeCount = dbMaxSnoozeCount;
274+
final dbAlarm = await IsarDb.getAlarm(currentlyRingingAlarm.value.isarId);
275+
if (dbAlarm != null && dbAlarm.maxSnoozeCount != currentlyRingingAlarm.value.maxSnoozeCount) {
276+
currentlyRingingAlarm.value.maxSnoozeCount = dbAlarm.maxSnoozeCount;
277277
}
278278
}
279279

@@ -448,22 +448,4 @@ class AlarmControlController extends GetxController {
448448
_currentTimeTimer?.cancel();
449449
_sensorSubscription?.cancel();
450450
}
451-
452-
453-
Future<int?> getMaxSnoozeCountFromDatabase(int alarmID) async {
454-
final sql = await IsarDb().getAlarmSQLiteDatabase();
455-
if (sql == null) return null;
456-
457-
final results = await sql.query(
458-
'alarms',
459-
columns: ['maxSnoozeCount'],
460-
where: 'alarmID = ?',
461-
whereArgs: [alarmID],
462-
);
463-
464-
if (results.isNotEmpty) {
465-
return results.first['maxSnoozeCount'] as int?;
466-
}
467-
return null;
468-
}
469451
}

lib/app/modules/splashScreen/controllers/splash_screen_controller.dart

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -119,21 +119,10 @@ class SplashScreenController extends GetxController {
119119
if (shouldAlarmRing) {
120120
currentlyRingingAlarm.value = await getCurrentlyRingingAlarm();
121121

122-
123122
if (currentlyRingingAlarm.value.alarmID != null) {
124-
final sql = await IsarDb().getAlarmSQLiteDatabase();
125-
final results = await sql!.query(
126-
'alarms',
127-
columns: ['maxSnoozeCount'],
128-
where: 'alarmID = ?',
129-
whereArgs: [currentlyRingingAlarm.value.alarmID],
130-
);
131-
132-
if (results.isNotEmpty) {
133-
final sqlMaxSnoozeCount = results.first['maxSnoozeCount'] as int?;
134-
if (sqlMaxSnoozeCount != null && sqlMaxSnoozeCount != currentlyRingingAlarm.value.maxSnoozeCount) {
135-
currentlyRingingAlarm.value.maxSnoozeCount = sqlMaxSnoozeCount;
136-
}
123+
final dbAlarm = await IsarDb.getAlarm(currentlyRingingAlarm.value.isarId);
124+
if (dbAlarm != null && dbAlarm.maxSnoozeCount != currentlyRingingAlarm.value.maxSnoozeCount) {
125+
currentlyRingingAlarm.value.maxSnoozeCount = dbAlarm.maxSnoozeCount;
137126
}
138127
}
139128

0 commit comments

Comments
 (0)