openpencil/crates/op-web-sdk/src
Kayshen-X 686527a0c3 perf(sdk): share scene via rc and idle the raf pump when clean
The viewer deep-cloned the whole LayoutScene every dirty frame and kept
an unconditional rAF loop alive forever. The scene is now shared via Rc,
and a DirtyState machine (wrap-safe generation counters, single
mark-and-arm funnel, bounded failure breaker, pending payload slots,
cancel-on-detach) schedules frames on demand so an idle tab sleeps.
2026-07-10 22:56:25 +08:00
..
dirty_state.rs perf(sdk): share scene via rc and idle the raf pump when clean 2026-07-10 22:56:25 +08:00
dirty_state_tests.rs perf(sdk): share scene via rc and idle the raf pump when clean 2026-07-10 22:56:25 +08:00
document.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
document_tests.rs fix(editor): repair strokes and legacy render layout 2026-06-21 16:52:31 +08:00
export.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
export_tests.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
lib.rs perf(sdk): share scene via rc and idle the raf pump when clean 2026-07-10 22:56:25 +08:00
navigation.rs perf(sdk): share scene via rc and idle the raf pump when clean 2026-07-10 22:56:25 +08:00
navigation_tests.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
render.rs perf(sdk): share scene via rc and idle the raf pump when clean 2026-07-10 22:56:25 +08:00
scene.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
scene_tests.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00
snapshot.rs fix(editor): repair strokes and legacy render layout 2026-06-21 16:52:31 +08:00
snapshot_tests.rs fix(editor): repair strokes and legacy render layout 2026-06-21 16:52:31 +08:00
viewer_host.rs feat(sdk): add op-web-sdk read-only web viewer crate 2026-06-19 17:52:12 +08:00