fix: drag n drop pdf ref

pull/9743/head
Konstantinos Kaloutas 2023-06-21 13:24:49 +03:00
parent afd31ce7b6
commit d3113a35c8
2 changed files with 12 additions and 1 deletions

View File

@ -1047,7 +1047,7 @@
(state/set-current-pdf! current)
(util/stop event)))
:draggable true
:on-drag-start #(.setData (gobj/get % "dataTransfer") "text" s)}
:on-drag-start #(.setData (gobj/get % "dataTransfer") "file" s)}
(or label-text
(->elem :span (map-inline config label)))]

View File

@ -143,6 +143,7 @@ const handleCreatingShapes = async (
async function tryCreateShapesFromDataTransfer(dataTransfer: DataTransfer) {
return tryCreateShapeHelper(
tryCreateShapeFromFilePath,
tryCreateShapeFromFiles,
tryCreateShapeFromPageName,
tryCreateShapeFromBlockUUID,
@ -166,6 +167,16 @@ const handleCreatingShapes = async (
return allShapes
}
async function tryCreateShapeFromFilePath(item: DataTransfer) {
const file = item.getData('file')
if (!file) return null
const dataTransfer = new DataTransfer()
dataTransfer.items.add(new File([new Blob([''])], file))
return await tryCreateShapeFromFiles(dataTransfer)
}
async function tryCreateShapeFromFiles(item: DataTransfer) {
const files = Array.from(item.files)
if (files.length > 0) {