Update drag and drop logic for chat files

This commit is contained in:
2026-04-17 13:02:26 +02:00
parent 9ba5380705
commit 599e0156df

View File

@@ -2347,7 +2347,7 @@ async function regenerateFromIndex(index, overrideUserText = null) {
if (activeSidebarMode !== 'chats' || !hasFilePayload(event)) return if (activeSidebarMode !== 'chats' || !hasFilePayload(event)) return
event.preventDefault() event.preventDefault()
imageDragDepthRef.current += 1 imageDragDepthRef.current += 1
if (selectedVisionModelSupportsVision && eventHasImageFiles(event)) { if (eventHasImageFiles(event) || Array.from(event?.dataTransfer?.files || []).some(isSupportedChatFile)) {
setIsChatDragActive(true) setIsChatDragActive(true)
} }
} }
@@ -2355,8 +2355,8 @@ async function regenerateFromIndex(index, overrideUserText = null) {
const handleChatDragOver = (event) => { const handleChatDragOver = (event) => {
if (activeSidebarMode !== 'chats' || !hasFilePayload(event)) return if (activeSidebarMode !== 'chats' || !hasFilePayload(event)) return
event.preventDefault() event.preventDefault()
event.dataTransfer.dropEffect = selectedVisionModelSupportsVision ? 'copy' : 'none' event.dataTransfer.dropEffect = 'copy'
if (selectedVisionModelSupportsVision && eventHasImageFiles(event) && !isChatDragActive) { if (!isChatDragActive) {
setIsChatDragActive(true) setIsChatDragActive(true)
} }
} }
@@ -2374,10 +2374,7 @@ async function regenerateFromIndex(index, overrideUserText = null) {
event.preventDefault() event.preventDefault()
imageDragDepthRef.current = 0 imageDragDepthRef.current = 0
setIsChatDragActive(false) setIsChatDragActive(false)
if (!selectedVisionModelSupportsVision) { await appendDroppedChatFiles(event.dataTransfer?.files)
return
}
await appendComposerImageFiles(event.dataTransfer?.files)
textareaRef.current?.focus() textareaRef.current?.focus()
} }