From dd350b29bb07f87c1ce1e0e12d6b37728c5efd44 Mon Sep 17 00:00:00 2001 From: haveboard Date: Mon, 19 Jan 2026 18:51:45 -0500 Subject: [PATCH] Fix: Preserve transition type during region randomize cycles Prevent zoom transition from reverting to fade after each randomize animation completes. Now only clears animation state (morphProgress, fadeOpacity) while preserving the selected transitionType so it remains active for subsequent randomize cycles. - Remove transitionType reset from triggerZoomTransition - Remove transitionType reset from trigger2DZoomTransition - Fixes issue where zoom would always reset to fade after first transition --- src/hooks/useRegionRandomizer.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/hooks/useRegionRandomizer.ts b/src/hooks/useRegionRandomizer.ts index 85b7e2c..bd216c4 100644 --- a/src/hooks/useRegionRandomizer.ts +++ b/src/hooks/useRegionRandomizer.ts @@ -171,10 +171,9 @@ export function useRegionRandomizer({ const animId = requestAnimationFrame(animate); animationRefs.current.set(regionId, animId); } else { - // Reset when done + // Reset when done - preserve transitionType so it stays selected onUpdateRegion(regionId, { morphProgress: undefined, - transitionType: undefined, transitionFrozen: false }); animationRefs.current.delete(regionId); @@ -269,8 +268,8 @@ export function useRegionRandomizer({ const animId = requestAnimationFrame(animate); animationRefs.current.set(regionId, animId); } else { - // Reset when done - onUpdateRegion(regionId, { morphProgress: undefined, transitionType: undefined }); + // Reset when done - preserve transitionType so it stays selected + onUpdateRegion(regionId, { morphProgress: undefined }); animationRefs.current.delete(regionId); } };