diff --git a/components/canvas/on-canvas-text-editor.tsx b/components/canvas/on-canvas-text-editor.tsx index b1e8602..04fe084 100644 --- a/components/canvas/on-canvas-text-editor.tsx +++ b/components/canvas/on-canvas-text-editor.tsx @@ -21,6 +21,7 @@ export function OnCanvasTextEditor() { deactivateOnCanvasEditor, addTextObject, updateTextObject, + deleteTextObject, setText, } = useTextStore(); @@ -201,9 +202,14 @@ export function OnCanvasTextEditor() { } else if (e.key === 'Escape') { e.preventDefault(); deactivateOnCanvasEditor(); + } else if ((e.key === 'Delete' || e.key === 'Backspace') && editingTextId && !editorText.trim()) { + // Delete the entire text object if it's empty and we're editing an existing text + e.preventDefault(); + deleteTextObject(editingTextId); + deactivateOnCanvasEditor(); } }, - [commitText, deactivateOnCanvasEditor] + [commitText, deactivateOnCanvasEditor, editingTextId, editorText, deleteTextObject] ); // Handle drag start