diff --git a/apps/client/src/widgets/collections/board/index.tsx b/apps/client/src/widgets/collections/board/index.tsx index b4055d6f8..e11beb203 100644 --- a/apps/client/src/widgets/collections/board/index.tsx +++ b/apps/client/src/widgets/collections/board/index.tsx @@ -132,21 +132,18 @@ export default function BoardView({ note: parentNote, noteIds, viewConfig, saveC e.preventDefault(); }, [draggedColumn]); - const handleColumnHover = useCallback((visualIndex: number, mouseX: number, columnRect: DOMRect) => { + const handleColumnHover = useCallback((index: number, mouseX: number, columnRect: DOMRect) => { if (!draggedColumn) return; const columnMiddle = columnRect.left + columnRect.width / 2; - // Determine drop position based on mouse position relative to column center - let dropIndex = mouseX < columnMiddle ? visualIndex : visualIndex + 1; + // Determine if we should insert before or after this column + const insertBefore = mouseX < columnMiddle; - // Convert visual index back to actual array index - if (draggedColumn.index <= visualIndex) { - // Add 1 because the dragged column (which is hidden) comes before this position - dropIndex += 1; - } + // Calculate the target position + let targetIndex = insertBefore ? index : index + 1; - setColumnDropPosition(dropIndex); + setColumnDropPosition(targetIndex); }, [draggedColumn]); const handleContainerDrop = useCallback((e: DragEvent) => { @@ -168,30 +165,22 @@ export default function BoardView({ note: parentNote, noteIds, viewConfig, saveC onDragOver={handleColumnDragOver} onDrop={handleContainerDrop} > - {byColumn && columns?.map((column, index) => { - // Calculate visual index (skipping hidden dragged column) - let visualIndex = index; - if (draggedColumn && draggedColumn.index < index) { - visualIndex = index - 1; - } - - return ( - <> - {columnDropPosition === index && ( -
- )} -