alarm: auto expiration for events

- Set default value
- Add "delete timer after expiration" setting to events.
master
Erik Andresen 2023-10-14 09:23:49 +02:00
parent 4c62777636
commit 4f47636195
3 changed files with 13 additions and 1 deletions

View File

@ -46,3 +46,4 @@
0.41: Fix a menu bug affecting alarms with empty messages.
0.42: Fix date not getting saved in event edit menu when tapping Confirm
0.43: New settings: Show confirm, Show Overflow, Show Type.
0.44: Add "delete timer after expiration" setting to events.

View File

@ -106,6 +106,9 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) {
var isNew = alarmIndex === undefined;
var alarm = require("sched").newDefaultAlarm();
if (withDate) {
alarm.del = require("sched").getSettings().defaultDeleteExpiredTimers;
}
alarm.dow = handleFirstDayOfWeek(alarm.dow);
if (selectedAlarm) {
@ -193,6 +196,9 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) {
/*LANG*/"Repeat": {
value: decodeRepeat(alarm),
onchange: () => setTimeout(showEditRepeatMenu, 100, alarm.rp, date || alarm.dow, (repeat, dow) => {
if (repeat) {
alarm.del = false; // do not auto delete a repeated alarm
}
alarm.rp = repeat;
alarm.dow = dow;
prepareAlarmForSave(alarm, alarmIndex, time, date, true);
@ -204,6 +210,10 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) {
value: alarm.as,
onchange: v => alarm.as = v
},
/*LANG*/"Delete After Expiration": {
value: alarm.del,
onchange: v => alarm.del = v
},
/*LANG*/"Hidden": {
value: alarm.hidden || false,
onchange: v => alarm.hidden = v
@ -225,6 +235,7 @@ function showEditAlarmMenu(selectedAlarm, alarmIndex, withDate) {
delete menu[/*LANG*/"Day"];
delete menu[/*LANG*/"Month"];
delete menu[/*LANG*/"Year"];
delete menu[/*LANG*/"Delete After Expiration"];
}
if (!isNew) {

View File

@ -2,7 +2,7 @@
"id": "alarm",
"name": "Alarms & Timers",
"shortName": "Alarms",
"version": "0.43",
"version": "0.44",
"description": "Set alarms and timers on your Bangle",
"icon": "app.png",
"tags": "tool,alarm",