fix: first frame

This commit is contained in:
Felix Roos 2023-12-17 22:51:43 +01:00
parent e17df79133
commit ed8f5bf24f
2 changed files with 4 additions and 3 deletions

View File

@ -188,7 +188,7 @@ export class StrudelMirror {
await this.prebaked;
try {
await this.repl.evaluate(this.code, false);
this.drawer.invalidate(this.repl.scheduler);
this.drawer.invalidate(this.repl.scheduler, -0.001);
// draw at -0.001 to avoid haps at 0 to be visualized as active
this.onDraw?.(this.drawer.visibleHaps, -0.001, [], this.painters);
} catch (err) {

View File

@ -145,12 +145,13 @@ export class Drawer {
},
);
}
invalidate(scheduler = this.scheduler) {
invalidate(scheduler = this.scheduler, t) {
if (!scheduler) {
return;
}
// TODO: scheduler.now() seems to move even when it's stopped, this hints at a bug...
t = t ?? scheduler.now();
this.scheduler = scheduler;
const t = scheduler.now();
let [_, lookahead] = this.drawTime;
const [begin, end] = [Math.max(t, 0), t + lookahead + 0.1];
// remove all future haps