diff --git a/frontend/src/documents/features/folders/useFolderItemLogic.ts b/frontend/src/documents/features/folders/useFolderItemLogic.ts index 8e42ea0..b964e9d 100644 --- a/frontend/src/documents/features/folders/useFolderItemLogic.ts +++ b/frontend/src/documents/features/folders/useFolderItemLogic.ts @@ -1,4 +1,5 @@ import React, { type DragEvent } from 'react'; +import { isTagTransferEvent } from '../tagging/tagTransfer'; import type { DocumentViewLogic } from '../../logic/useDocumentViewLogic'; import { useDocumentsCommandContext } from '../../context/DocumentsCommandContext'; import { useDocumentsViewStateContext } from '../../context/DocumentsViewStateContext'; @@ -63,9 +64,26 @@ export const useFolderItemLogic = (props: UseFolderItemLogicProps) => { event.preventDefault(); onFolderSelect?.(folder.id); }, - onDragOver: (event: DragEvent) => onFolderDragOver?.(event, folder.id), + onDragOver: (event: DragEvent) => { + if (isTagTransferEvent(event)) { + event.preventDefault(); + event.stopPropagation(); + if (event.dataTransfer) { + event.dataTransfer.dropEffect = 'none'; + } + return; + } + onFolderDragOver?.(event, folder.id); + }, onDragLeave: onFolderDragLeave, - onDrop: (event: DragEvent) => onFolderDrop?.(event, folder.id), + onDrop: (event: DragEvent) => { + if (isTagTransferEvent(event)) { + event.preventDefault(); + event.stopPropagation(); + return; + } + onFolderDrop?.(event, folder.id); + }, onDragStart: (event: DragEvent) => { if (canDragFolder) { onFolderDragStart?.(event, folder.id);