mirror of
https://github.com/Egonex-AI/Understand-Anything.git
synced 2026-06-22 10:58:03 +08:00
75368dc103
Codex review on PR #114: when the RAF poll window expires before highlighted nodes have been measured, the timeout fallback was setting `fittedKeyRef.current = targetKey`, marking the step as fitted even though the proper highlight fit never ran. If Stage 2 layout landed after the 4s cap, the effect early-returned on the next nodes update because the target key already matched, so the camera stayed pinned to the fallback layer fit instead of zooming onto the actual highlights. Fix: - Subscribe to React Flow's user-node array via `useNodes()` so the effect re-fires when Stage 2 finally produces the highlighted ids after the per-step RAF poll has already given up. - On timeout, pan into the layer for usability but do NOT set `fittedKeyRef`. The next nodes update gets another shot at the highlight fit, and on success `fittedKeyRef` records the proper fit. - Use a separate `fallbackKeyRef` to ensure the fallback `fitView` fires at most once per step — without this, every subsequent nodes update during the unready window would trigger a viewport jump. - Reset both refs when `tourHighlightedNodeIds` clears (stop tour). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
75368dc103
·
2026-05-04 19:24:09 +08:00
History