Skip to content

Commit 6c8570e

Browse files
committed
slowed down fullscreen animations so they don't hurt performance too much, added Spinner animation
1 parent 8e86827 commit 6c8570e

File tree

2 files changed

+33
-3
lines changed

2 files changed

+33
-3
lines changed

apps/loadanim/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This app adds an animation that happens while Bangle.js is loading an app. It requires 2v29+ (or 2v28 cutting edge) firmware to work.
44

55
**Note:** loading time will be slightly negatively impacted because of the extra time
6-
taken to update the screen during the animation, but it's not likely to be more than 20% worse.
6+
taken to update the screen during the animation, but it's not likely to be more than 30% worse.
77

88
## Usage
99

apps/loadanim/settings.js

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
}
2929
},
3030
time:20,
31-
interval:100,
31+
interval:150,
3232
});
3333
let done = function() {
3434
if (id===undefined) return;
@@ -57,7 +57,7 @@
5757
}
5858
},
5959
time:20,
60-
interval:100,
60+
interval:150,
6161
});
6262
let done = function() {
6363
if (id===undefined) return;
@@ -96,6 +96,36 @@
9696
setTimeout(done, 0);
9797
}, // 'loading' is an image that the OS displays as soon as it restarts
9898
loading : atob("gFiCAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQAFVVVVVVVVQAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVUAAFVVVVVVVUAAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVAAAFVVVVVVVAAAAFVVUAAVVVVVVVVVVVVVVVVVVVVVUAAAVVVVVVVUAAAAVVVAAAVVVVVVVVVVVVVVVVVVVVVQDwBUAAEAAEADzwAAEAAAAVVVVVVVVVVVVVVVVVVVVVAPAFAAAAAAAAPPAAAAAAABVVVVVVVVVVVVVVVVVVVVUA8AQAAAAAAAA88AAAAA/AFVVVVVVVVVVVVVVVVVVVVQDwAAAAAAAAADwAAAAAPwAVVVVVVVVVVVVVVVVVVVVVAPAAA/wA/wA/PAPPwA/8ABVVVVVVVVVVVVVVVVVVVVUA8AAP/wP/wP/88//wP/8AFVVVVVVVVVVVVVVVVVVVVQDwAD8Pz8Pz8Pzz8Pz8D8AVVVVVVVVVVVVVVVVVVVVVAPAAPAPAAPPAPPPAPPADwBVVVVVVVVVVVVVVVVVVVVUA8AA8A8AA88A888A88APAFVVVVVVVVVVVVVVVVVVVVQDwADwDwP/zwDzzwDz8D8AVVVVVVVVVVVVVVVVVVVVVAPAAPAPD//PAPPPAPP//ABVVVVVVVVVVVVVVVVVVVVUA8AA8A8/A88A888A8P/wAAABVVVVVVVVVVVVVVVVVVQDwADwDzwDzwDzzwDw8AAAAABVVVVVVVVVVVVVVVVVVAPAAPAPPAPPAPPPAPDwAAAAABVVVVVVVVVVVVVVVVVUA8AA8A88A88A888A8D/wAAAAFVVVVVVVVVVVVVVVVVQDwAD8Pz8Pz8PzzwDw//w888AVVVVVVVVVVVVVVVVVVAP//D/8D//D//PPAPPwPzzzwBVVVVVVVVVVVVVVVVVUA//8D/AD88D8888A88APPPPAFVVVVVVVVVVVVVVVVVQAAAAAAAAAAAAAAAADwA8AAAAVVVVVVVVVVVVVVVVVVAAAAAAAAAAAAAAAAAPwPwAAABVVVVVVVVVVVVVVVVVUAAAAAAAAAAAAAAAAAP/8AAAAFVVVVVVVVVVVVVVVVVQAAAAAAAAAAAAAAAAAP/AAAAAVVVVVVVVVVVVVVVVVVAAAAAAAAAAAAAAAAAAAAAAAABVVVVVVVVVVVVVVVVVUAAAAAAAAAAAAAAAAAAAAAAAAFVVVVVVVVVVVVVVVVVQAAAAAAAAAAAAAAAAAAAAAAAAVVVVVVVVVVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVAP//////////////////////////////////////AFUA//////////////////////////////////////8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAFUA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AVQDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwBVAP//////////////////////////////////////AFUA//////////////////////////////////////8AVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV")
99+
},
100+
{
101+
name : "Spinner",
102+
code : function() {
103+
let m = 28, o = Graphics.createArrayBuffer(m*2,m*2,2);
104+
let n = 0, gl = g, img = atob("GBiCAVVVQAFVVVVQAAAFVVVAAAABVVU////8VVQ////8FVADwAPABUADwAPAAUADwAPAAUAA8A8AAQAA/D8AAAAAP/wAAAAAD/AAAAAAD/AAAAAAP/wAAAAA/D8AAEAA8A8AAUADwAPAAUADwAPAAVADw8PABVQ////8FVU////8VVVAAAABVVVQAAAFVVVVQAFVVQ==");
105+
o.transparent = 1;
106+
o.setBgColor(1).clear().setBgColor(0);
107+
o.setColor(0).fillCircle(m,m,m);
108+
o.setColor(3).fillCircle(m,m,m-2);
109+
o.setColor(0).fillCircle(m,m,m-6);
110+
Bangle.setLCDOverlay(o,88-m,88-m,{id:"loadanim"});
111+
gl.flip(1);
112+
let id = timer.add({
113+
type:"EXEC", fn: () => { "ram";
114+
n++;
115+
o.setColor(3).drawImage(img,m,m,{rotate:n/5, scale:1.5});
116+
gl.flip(1);
117+
},
118+
time:100,
119+
interval:100,
120+
});
121+
let done = function() {
122+
if (id===undefined) return;
123+
require("timer").remove(id);
124+
id = undefined;
125+
Bangle.setLCDOverlay(undefined, {id: "loadanim"});
126+
};
127+
setTimeout(done, 0);
128+
}
99129
}
100130
];
101131

0 commit comments

Comments
 (0)