fix(vue-flow,nodes): unselect nodes on click when multi selection active
This commit is contained in:
@@ -35,6 +35,7 @@ const {
|
|||||||
addSelectedNodes,
|
addSelectedNodes,
|
||||||
multiSelectionActive,
|
multiSelectionActive,
|
||||||
resetSelectedElements,
|
resetSelectedElements,
|
||||||
|
getSelectedNodes,
|
||||||
} = $(useVueFlow())
|
} = $(useVueFlow())
|
||||||
|
|
||||||
const node = $computed(() => getNode(id)!)
|
const node = $computed(() => getNode(id)!)
|
||||||
@@ -163,7 +164,13 @@ const onSelectNode = (event: MouseEvent) => {
|
|||||||
nodesSelectionActive: false,
|
nodesSelectionActive: false,
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!node.selected) addSelectedNodes([node])
|
if (!node.selected) {
|
||||||
|
addSelectedNodes([node])
|
||||||
|
} else if (node.selected && multiSelectionActive) {
|
||||||
|
// todo add action to unselect nodes/edges easily
|
||||||
|
getSelectedNodes.splice(getSelectedNodes.indexOf(node), 1)
|
||||||
|
node.selected = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
emits.nodeClick({ event, node, connectedEdges: getConnectedEdges([node], edges) })
|
emits.nodeClick({ event, node, connectedEdges: getConnectedEdges([node], edges) })
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user