feat: Prevent tag transfers on folders
This commit is contained in:
@@ -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<HTMLElement>) => onFolderDragOver?.(event, folder.id),
|
||||
onDragOver: (event: DragEvent<HTMLElement>) => {
|
||||
if (isTagTransferEvent(event)) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
if (event.dataTransfer) {
|
||||
event.dataTransfer.dropEffect = 'none';
|
||||
}
|
||||
return;
|
||||
}
|
||||
onFolderDragOver?.(event, folder.id);
|
||||
},
|
||||
onDragLeave: onFolderDragLeave,
|
||||
onDrop: (event: DragEvent<HTMLElement>) => onFolderDrop?.(event, folder.id),
|
||||
onDrop: (event: DragEvent<HTMLElement>) => {
|
||||
if (isTagTransferEvent(event)) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
return;
|
||||
}
|
||||
onFolderDrop?.(event, folder.id);
|
||||
},
|
||||
onDragStart: (event: DragEvent<HTMLElement>) => {
|
||||
if (canDragFolder) {
|
||||
onFolderDragStart?.(event, folder.id);
|
||||
|
||||
Reference in New Issue
Block a user