diff --git a/apps/client/src/widgets/collections/board/card.tsx b/apps/client/src/widgets/collections/board/card.tsx index 5b663e141..4317d829c 100644 --- a/apps/client/src/widgets/collections/board/card.tsx +++ b/apps/client/src/widgets/collections/board/card.tsx @@ -63,6 +63,14 @@ export default function Card({ setBranchIdToEdit?.(branch.branchId); }, [ setBranchIdToEdit, branch ]); + const handleKeyUp = useCallback((e: KeyboardEvent) => { + if (e.key === "Enter") { + api.openNote(note.noteId); + } else if (e.key === "F2") { + setBranchIdToEdit?.(branch.branchId); + } + }, [ setBranchIdToEdit, note ]); + useEffect(() => { editorRef.current?.focus(); }, [ isEditing ]); @@ -83,9 +91,11 @@ export default function Card({ onDragEnd={handleDragEnd} onContextMenu={handleContextMenu} onClick={!isEditing ? handleOpen : undefined} + onKeyUp={handleKeyUp} style={{ display: !isVisible ? "none" : undefined }} + tabIndex={300} > {!isEditing ? ( <> diff --git a/apps/client/src/widgets/collections/board/column.tsx b/apps/client/src/widgets/collections/board/column.tsx index 01e71c8ff..6d704bbe7 100644 --- a/apps/client/src/widgets/collections/board/column.tsx +++ b/apps/client/src/widgets/collections/board/column.tsx @@ -146,11 +146,18 @@ export default function Column({ function AddNewItem({ column, api }: { column: string, api: BoardApi }) { const [ isCreatingNewItem, setIsCreatingNewItem ] = useState(false); const addItemCallback = useCallback(() => setIsCreatingNewItem(true), []); + const handleKeyDown = useCallback((e: KeyboardEvent) => { + if (!isCreatingNewItem && e.key === "Enter") { + setIsCreatingNewItem(true); + } + }, []); return (