diff --git a/src/viewport-three/ViewportCanvas.tsx b/src/viewport-three/ViewportCanvas.tsx index 5478979b..f00ed1e2 100644 --- a/src/viewport-three/ViewportCanvas.tsx +++ b/src/viewport-three/ViewportCanvas.tsx @@ -172,6 +172,14 @@ export function ViewportCanvas({ }); }, [onToolPreviewChange, panelId]); + useEffect(() => { + hostRef.current?.setPlacementPreviewChangeHandler(onToolPreviewChange); + }, [onToolPreviewChange]); + + useEffect(() => { + hostRef.current?.setPlacementCommitHandler(onCommitPlacement); + }, [onCommitPlacement]); + useEffect(() => { hostRef.current?.setToolMode(toolMode); }, [toolMode]); @@ -180,6 +188,10 @@ export function ViewportCanvas({ hostRef.current?.setBoxCreatePreview(toolMode === "box-create" && toolPreview.kind === "box-create" ? toolPreview.center : null); }, [toolMode, toolPreview]); + useEffect(() => { + hostRef.current?.setPlacementPreview(toolMode === "place" && toolPreview.kind === "placement" ? toolPreview : null); + }, [toolMode, toolPreview]); + useEffect(() => { if (focusRequestId === 0) { return;