Skip to content

[PLAT-5195] Zoom accumulator + requestAnimationFrame & other race fixes for zoom events - #817

Draft
aeischeid wants to merge 2 commits into
masterfrom
rafPlusZoomAccumulator2
Draft

[PLAT-5195] Zoom accumulator + requestAnimationFrame & other race fixes for zoom events#817
aeischeid wants to merge 2 commits into
masterfrom
rafPlusZoomAccumulator2

Conversation

@aeischeid

@aeischeid aeischeid commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Use a zoom accumulator and requestAnimationFrame to handle zoomToPoint queue for a series of scroll wheel events instead of a loop of setTimeouts.
  • Improve reuse of renderOptions
  • Take advantage of skipCameraValidation in mouseEvents, where the starting and intermediate frames should be safe
  • move isTransforming flags after promise of begin/endInteraction to prevent edge case race condition with rapid fire zoom events

replaces #812 as I was trying on top of #814

Test Plan

Do various zoom behaviors on example pages with a larger model especially with a external mouse with a scroll wheel. See fewer frames flashing

Release Notes

Further improve zoom frame flashing issue

Possible Regressions

Dependencies

Base automatically changed from cameraCrashFixTry1 to master July 15, 2026 22:33
@aeischeid
aeischeid force-pushed the rafPlusZoomAccumulator2 branch from 79ed680 to ddbf5bf Compare July 16, 2026 00:45
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant