fix: DEL key deletes nodes and deletion is now undoable

- Add 'Delete' to deleteKeyCode so both Backspace and Delete remove nodes
- Call snapshotHistory() in onBeforeDelete (keyboard) and in DetailPanel
  handleDelete (button) so deletions can be undone with Ctrl+Z
This commit is contained in:
Pouzor
2026-03-31 00:19:27 +02:00
parent 1f884fd1db
commit 1444a81150
4 changed files with 39 additions and 4 deletions
@@ -15,7 +15,7 @@ type SvcForm = { port: string; protocol: 'tcp' | 'udp'; service_name: string }
const EMPTY_FORM: SvcForm = { port: '', protocol: 'tcp', service_name: '' }
export function DetailPanel({ onEdit }: DetailPanelProps) {
const { nodes, selectedNodeId, setSelectedNode, deleteNode, updateNode } = useCanvasStore()
const { nodes, selectedNodeId, setSelectedNode, deleteNode, updateNode, snapshotHistory } = useCanvasStore()
const node = nodes.find((n) => n.id === selectedNodeId)
const [addingForNode, setAddingForNode] = useState<string | null>(null)
@@ -35,6 +35,7 @@ export function DetailPanel({ onEdit }: DetailPanelProps) {
const handleDelete = () => {
if (confirm(`Delete "${data.label}"?`)) {
snapshotHistory()
deleteNode(node.id)
}
}