diff --git a/next-release-notes.md b/next-release-notes.md index f77d5bd6..bf08e735 100644 --- a/next-release-notes.md +++ b/next-release-notes.md @@ -4,6 +4,7 @@ ### Features ### Bug Fixes and Improvements +- Fixes an issue where drag and drop between trees was not working after remount of the target tree(#258) ### Other Changes --> \ No newline at end of file diff --git a/packages/core/src/controlledEnvironment/useControlledTreeEnvironmentProps.ts b/packages/core/src/controlledEnvironment/useControlledTreeEnvironmentProps.ts index 39bd84c9..a9f1dba7 100644 --- a/packages/core/src/controlledEnvironment/useControlledTreeEnvironmentProps.ts +++ b/packages/core/src/controlledEnvironment/useControlledTreeEnvironmentProps.ts @@ -88,8 +88,11 @@ export const useControlledTreeEnvironmentProps = ({ const unregisterTree = useCallback( treeId => { onUnregisterTree?.(trees[treeId]); - delete trees[treeId]; - setTrees(trees); + setTrees(trees => { + const newTrees = {...trees}; + delete newTrees[treeId]; + return newTrees; + }); }, [onUnregisterTree, trees] );