Skip to content

Commit 37f1542

Browse files
committed
update engine
1 parent 57c755b commit 37f1542

File tree

4 files changed

+267
-262
lines changed

4 files changed

+267
-262
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"author": "Luiz Bills",
1818
"license": "MIT",
1919
"devDependencies": {
20-
"esbuild": "^0.25.6"
20+
"esbuild": "^0.25.8"
2121
},
2222
"dependencies": {
2323
"@babel/standalone": "^7.28.1",

public/app.js

Lines changed: 253 additions & 253 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/litecanvas.js

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
var assert = (condition, message = "Assertion failed") => {
2828
if (!condition) throw new Error(message);
2929
};
30-
var version = "0.93.0";
30+
var version = "0.93.1";
3131
function litecanvas(settings = {}) {
3232
const root = window, math = Math, TWO_PI = math.PI * 2, raf = requestAnimationFrame, _browserEventListeners = [], on = (elem, evt, callback) => {
3333
elem.addEventListener(evt, callback, false);
@@ -45,7 +45,7 @@
4545
animate: true
4646
};
4747
settings = Object.assign(defaults, settings);
48-
let _initialized = false, _plugins = [], _canvas, _scale = 1, _ctx, _outline_fix = 0.5, _timeScale = 1, _lastFrameTime, _deltaTime = 1 / 60, _accumulated = 0, _rafid, _fontFamily = "sans-serif", _fontSize = 20, _rngSeed = Date.now(), _colors = defaultPalette, _defaultSound = [0.5, 0, 1750, , , 0.3, 1, , , , 600, 0.1], _coreEvents = "init,update,draw,tap,untap,tapping,tapped,resized", _mathFunctions = "PI,sin,cos,atan2,hypot,tan,abs,ceil,floor,trunc,min,max,pow,sqrt,sign,exp", _eventListeners = {};
48+
let _initialized = false, _plugins = [], _canvas, _scale = 1, _ctx, _outline_fix = 0.5, _timeScale = 1, _lastFrameTime, _deltaTime = 1 / 60, _accumulated, _rafid, _fontFamily = "sans-serif", _fontSize = 20, _rngSeed = Date.now(), _colors = defaultPalette, _defaultSound = [0.5, 0, 1750, , , 0.3, 1, , , , 600, 0.1], _coreEvents = "init,update,draw,tap,untap,tapping,tapped,resized", _mathFunctions = "PI,sin,cos,atan2,hypot,tan,abs,ceil,floor,trunc,min,max,pow,sqrt,sign,exp", _eventListeners = {};
4949
const instance = {
5050
/** @type {number} */
5151
W: 0,
@@ -1020,7 +1020,9 @@
10201020
* Resumes (if paused) the engine loop.
10211021
*/
10221022
resume() {
1023-
if (!_rafid && _initialized) {
1023+
if (_initialized && !_rafid) {
1024+
_accumulated = 0;
1025+
_lastFrameTime = performance.now();
10241026
_rafid = raf(drawFrame);
10251027
}
10261028
},
@@ -1269,14 +1271,20 @@
12691271
}
12701272
);
12711273
}
1274+
on(root, "focus", () => {
1275+
DEV: console.warn('[litecanvas] engine loop restarted on "focus" event');
1276+
instance.pause();
1277+
instance.resume();
1278+
});
12721279
_initialized = true;
12731280
instance.emit("init", instance);
1274-
_lastFrameTime = performance.now();
12751281
instance.resume();
12761282
}
12771283
function drawFrame(now) {
12781284
if (!settings.animate) {
12791285
return instance.emit("draw");
1286+
} else if (_rafid) {
1287+
_rafid = raf(drawFrame);
12801288
}
12811289
let updated = 0;
12821290
let frameTime = (now - _lastFrameTime) / 1e3;
@@ -1293,9 +1301,6 @@
12931301
if (updated) {
12941302
instance.emit("draw");
12951303
}
1296-
if (_rafid) {
1297-
_rafid = raf(drawFrame);
1298-
}
12991304
}
13001305
function setupCanvas() {
13011306
if ("string" === typeof settings.canvas) {

public/sw.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
const cacheName = "luizbills.litecanvas-editor-v1";
2-
const version = "2025.7.18.3";
2+
const version = "2025.7.20.0";
33

44
const precacheResources = [
55
"/",

0 commit comments

Comments
 (0)