diff --git a/lama_cleaner/app/src/components/Editor/Editor.tsx b/lama_cleaner/app/src/components/Editor/Editor.tsx index b5e3ca9..9db800c 100644 --- a/lama_cleaner/app/src/components/Editor/Editor.tsx +++ b/lama_cleaner/app/src/components/Editor/Editor.tsx @@ -80,7 +80,8 @@ export default function Editor(props: EditorProps) { const [sizeLimit, setSizeLimit] = useState(1080) const windowSize = useWindowSize() const viewportRef = useRef() - const [centered, setCentered] = useState(false) + // Indicates that the image has been loaded and is centered on first load + const [initialCentered, setInitialCentered] = useState(false) const [isDraging, setIsDraging] = useState(false) const [isMultiStrokeKeyPressed, setIsMultiStrokeKeyPressed] = useState(false) @@ -241,8 +242,12 @@ export default function Editor(props: EditorProps) { context.canvas.width = original.naturalWidth context.canvas.height = original.naturalHeight } - viewportRef.current?.centerView(s, 1) - setCentered(true) + + if (!initialCentered) { + viewportRef.current?.centerView(s, 1) + setInitialCentered(true) + } + draw() }, [ context?.canvas, @@ -251,6 +256,7 @@ export default function Editor(props: EditorProps) { original, isOriginalLoaded, windowSize, + initialCentered, ]) // Zoom reset @@ -564,7 +570,7 @@ export default function Editor(props: EditorProps) {