diff --git a/src/components/FileUpload.tsx b/src/components/FileUpload.tsx index b9e406a..4cf0031 100644 --- a/src/components/FileUpload.tsx +++ b/src/components/FileUpload.tsx @@ -39,7 +39,8 @@ export function FileUpload({ // Use prop pesData if available (from cached pattern), otherwise use local state const pesData = pesDataProp || localPesData; - const displayFileName = resumeFileName || fileName; + // When resumeFileName is cleared but we still have pesData, preserve the filename + const displayFileName = resumeFileName || fileName || (pesDataProp ? 'pattern.pes' : ''); const [isLoading, setIsLoading] = useState(false); const handleFileChange = useCallback( diff --git a/src/hooks/useBrotherMachine.ts b/src/hooks/useBrotherMachine.ts index 699175c..1229b57 100644 --- a/src/hooks/useBrotherMachine.ts +++ b/src/hooks/useBrotherMachine.ts @@ -306,6 +306,7 @@ export function useBrotherMachine() { setResumeFileName(null); // NOTE: We intentionally DON'T clear setResumedPattern(null) // so the pattern remains visible in the canvas for re-editing + // However, we DO need to preserve pesData in App.tsx for re-upload await refreshStatus(); } catch (err) {