chore(react/collections/board): fix dragging from tree

This commit is contained in:
Elian Doran 2025-09-13 09:46:09 +03:00
parent b934b2b6ca
commit ae5576f2a3
No known key found for this signature in database
2 changed files with 5 additions and 3 deletions

View File

@ -11,7 +11,7 @@ import BoardApi from "./api";
import Card, { CARD_CLIPBOARD_TYPE, CardDragData } from "./card";
import { JSX } from "preact/jsx-runtime";
import froca from "../../../services/froca";
import { DragData } from "../../note_tree";
import { DragData, TREE_CLIPBOARD_TYPE } from "../../note_tree";
interface DragContext {
column: string;
@ -173,7 +173,7 @@ function useDragging({ column, columnIndex, columnItems, isEditing }: DragContex
const handleDragOver = useCallback((e: DragEvent) => {
if (isEditing || draggedColumn || isDraggingRef.current) return; // Don't handle card drops when dragging columns
if (!e.dataTransfer?.types.includes(CARD_CLIPBOARD_TYPE)) return;
if (!e.dataTransfer?.types.includes(CARD_CLIPBOARD_TYPE) && !e.dataTransfer.types.includes(TREE_CLIPBOARD_TYPE)) return;
e.preventDefault();
setDropTarget(column);
@ -215,7 +215,7 @@ function useDragging({ column, columnIndex, columnItems, isEditing }: DragContex
setDropTarget(null);
setDropPosition(null);
const data = e.dataTransfer?.getData(CARD_CLIPBOARD_TYPE);
const data = e.dataTransfer?.getData(CARD_CLIPBOARD_TYPE) || e.dataTransfer?.getData("text");
if (!data) return;
let draggedCard: CardDragData | DragData[];

View File

@ -195,6 +195,8 @@ export interface DragData {
title: string;
}
export const TREE_CLIPBOARD_TYPE = "application/x-fancytree-node";
export default class NoteTreeWidget extends NoteContextAwareWidget {
private $tree!: JQuery<HTMLElement>;
private $treeActions!: JQuery<HTMLElement>;