From ceeccbcac233bc0617bd120b1a436e5b3bec6f31 Mon Sep 17 00:00:00 2001 From: Sebastian Helzle Date: Wed, 10 Apr 2024 14:13:52 +0200 Subject: [PATCH] BUGFIX: Insert tree items in selected order on drag & drop --- .../neos-ui/src/Containers/LeftSideBar/NodeTree/index.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/neos-ui/src/Containers/LeftSideBar/NodeTree/index.js b/packages/neos-ui/src/Containers/LeftSideBar/NodeTree/index.js index 5efdd420b5..3a8972aaab 100644 --- a/packages/neos-ui/src/Containers/LeftSideBar/NodeTree/index.js +++ b/packages/neos-ui/src/Containers/LeftSideBar/NodeTree/index.js @@ -95,8 +95,14 @@ export default class NodeTree extends PureComponent { } handleDrop = (targetNode, position) => { - const {currentlyDraggedNodes} = this.state; + let {currentlyDraggedNodes} = this.state; const {moveNodes, focus} = this.props; + + if (position === 'after') { + // Reverse the order of nodes to keep the correct order after each node is inserted after the target node individually + currentlyDraggedNodes = Array.from(currentlyDraggedNodes).reverse(); + } + moveNodes(currentlyDraggedNodes, $get('contextPath', targetNode), position); // We need to refocus the tree, so all focus would be reset, because its context paths have changed while moving // Could be removed with the new CR