mirror of
https://github.com/danbulant/ester_os
synced 2026-07-07 03:51:06 +00:00
Show current time & change ejected state
This commit is contained in:
parent
e6de0b2666
commit
78b6d8ab43
1 changed files with 22 additions and 2 deletions
|
|
@ -17,13 +17,33 @@ class Welcome implements RenderDef {
|
||||||
async prepare(){
|
async prepare(){
|
||||||
this.element = document.createElement("div");
|
this.element = document.createElement("div");
|
||||||
var el = this.element;//LAZYNESS
|
var el = this.element;//LAZYNESS
|
||||||
el.className = "welcome-page";
|
el.className = "welcome-page";
|
||||||
|
|
||||||
|
var t:HTMLDivElement = document.createElement("div");
|
||||||
|
t.className = "welcome-time";
|
||||||
|
var d:Date = new Date();
|
||||||
|
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
|
||||||
|
|
||||||
|
var w:RenderDef = this;
|
||||||
|
setTimeout(() => {
|
||||||
|
var d:Date = new Date();
|
||||||
|
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
|
||||||
|
|
||||||
|
var id:NodeJS.Timeout = setInterval(()=>{
|
||||||
|
if(w.state != RenderStates.Rendered)return clearInterval(id);
|
||||||
|
|
||||||
|
var d = new Date();
|
||||||
|
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
|
||||||
|
}, 60000)
|
||||||
|
}, 60000 - d.getMilliseconds());//exactly every minute
|
||||||
|
|
||||||
|
el.appendChild(t);
|
||||||
|
|
||||||
this.state = RenderStates.Ready;
|
this.state = RenderStates.Ready;
|
||||||
}
|
}
|
||||||
eject(){
|
eject(){
|
||||||
document.body.removeChild(this.element);
|
document.body.removeChild(this.element);
|
||||||
this.state = RenderStates.Hidden; //this eject function doesn't destroy anything, so it might be reused
|
this.state = RenderStates.Ejected;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue