diff --git a/.changeset/dry-lemons-play.md b/.changeset/dry-lemons-play.md new file mode 100644 index 000000000..a922086a2 --- /dev/null +++ b/.changeset/dry-lemons-play.md @@ -0,0 +1,5 @@ +--- +"@preact/signals": patch +--- + +We reduce the raf timeout to be just above a timeout that is associated with a 30hz refresh rate. This ensures that for hidden frames the timeout drift can't be too large, the drift being too high could lead to unexpected situations. diff --git a/packages/preact/src/index.ts b/packages/preact/src/index.ts index 30750d3cc..9d10b5455 100644 --- a/packages/preact/src/index.ts +++ b/packages/preact/src/index.ts @@ -398,7 +398,7 @@ function safeRaf(callback: () => void) { callback(); }; - const timeout = setTimeout(done, 100); + const timeout = setTimeout(done, 35); const raf = requestAnimationFrame(done); }