sched 0.31: Ensure we reschedule alarms after setTimeZone has been called (fix #3791)
parent
df2bae663b
commit
ebbe4206e6
|
|
@ -31,3 +31,4 @@
|
||||||
0.28: Added an icon for disabled events
|
0.28: Added an icon for disabled events
|
||||||
0.29: Improve clkinfo startup time by 10ms
|
0.29: Improve clkinfo startup time by 10ms
|
||||||
0.30: Fix possible bug in toggling an alarm to on, from clkinfo
|
0.30: Fix possible bug in toggling an alarm to on, from clkinfo
|
||||||
|
0.31: Ensure we reschedule alarms after setTimeZone has been called (fix #3791)
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
clearTimeout(Bangle.SCHED);
|
clearTimeout(Bangle.SCHED);
|
||||||
delete Bangle.SCHED;
|
delete Bangle.SCHED;
|
||||||
}
|
}
|
||||||
|
delete E.setTimeZone; // delete any modified setTimeZone we added below
|
||||||
var alarms = require('Storage').readJSON('sched.json',1)||[];
|
var alarms = require('Storage').readJSON('sched.json',1)||[];
|
||||||
var time = new Date();
|
var time = new Date();
|
||||||
var currentTime = (time.getHours()*3600000)+(time.getMinutes()*60000)+(time.getSeconds()*1000);
|
var currentTime = (time.getHours()*3600000)+(time.getMinutes()*60000)+(time.getSeconds()*1000);
|
||||||
|
|
@ -25,6 +26,9 @@
|
||||||
normally.
|
normally.
|
||||||
If active[0].js is defined, just run that code as-is and not alarm.js */
|
If active[0].js is defined, just run that code as-is and not alarm.js */
|
||||||
Bangle.SCHED = setTimeout(active[0].js||'load("sched.js")',t);
|
Bangle.SCHED = setTimeout(active[0].js||'load("sched.js")',t);
|
||||||
|
// Override setTimeZone to ensure we reschedule alarms after it has been called - fix #3791
|
||||||
|
var tz = E.setTimeZone;
|
||||||
|
E.setTimeZone = function(z) { tz(z);eval(require("Storage").read("sched.boot.js")); };
|
||||||
} else { // check for new alarms at midnight (so day of week works)
|
} else { // check for new alarms at midnight (so day of week works)
|
||||||
Bangle.SCHED = setTimeout('eval(require("Storage").read("sched.boot.js"))', 86400000 - currentTime);
|
Bangle.SCHED = setTimeout('eval(require("Storage").read("sched.boot.js"))', 86400000 - currentTime);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"id": "sched",
|
"id": "sched",
|
||||||
"name": "Scheduler",
|
"name": "Scheduler",
|
||||||
"version": "0.30",
|
"version": "0.31",
|
||||||
"description": "Scheduling library for alarms and timers",
|
"description": "Scheduling library for alarms and timers",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"type": "scheduler",
|
"type": "scheduler",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue