From 4c7b22d37d14c8469b4510a11710f162940cdaa6 Mon Sep 17 00:00:00 2001 From: missionfloyd Date: Sun, 28 Apr 2024 22:46:11 -0600 Subject: [PATCH] Fix dragging text within prompt input --- javascript/dragdrop.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/javascript/dragdrop.js b/javascript/dragdrop.js index 0c0183564..882562d73 100644 --- a/javascript/dragdrop.js +++ b/javascript/dragdrop.js @@ -56,6 +56,15 @@ function eventHasFiles(e) { return false; } +function isURL(url) { + try { + const _ = new URL(url); + return true; + } catch { + return false; + } +} + function dragDropTargetIsPrompt(target) { if (target?.placeholder && target?.placeholder.indexOf("Prompt") >= 0) return true; if (target?.parentNode?.parentNode?.className?.indexOf("prompt") > 0) return true; @@ -77,7 +86,7 @@ window.document.addEventListener('dragover', e => { window.document.addEventListener('drop', async e => { const target = e.composedPath()[0]; const url = e.dataTransfer.getData('text/uri-list') || e.dataTransfer.getData('text/plain'); - if (!eventHasFiles(e) && !url) return; + if (!eventHasFiles(e) && !isURL(url)) return; if (dragDropTargetIsPrompt(target)) { e.stopPropagation();