]> cat aescling's git repositories - mastodon.git/commitdiff
Allow event defaults on index for text data transfer (#9840)
authortmm576 <tmm576@users.noreply.github.com>
Thu, 17 Jan 2019 22:27:51 +0000 (17:27 -0500)
committerThibaut Girka <thib@sitedethib.com>
Sun, 20 Jan 2019 10:53:22 +0000 (11:53 +0100)
app/javascript/flavours/glitch/features/ui/index.js

index 7928dfe6c32e0f8424123274e71215e36f27e8cb..602d93832fabfcf77531620b7793da0970f06ce3 100644 (file)
@@ -166,6 +166,7 @@ export default class UI extends React.Component {
   }
 
   handleDragOver = (e) => {
+    if (this.dataTransferIsText(e.dataTransfer)) return false;
     e.preventDefault();
     e.stopPropagation();
 
@@ -179,6 +180,7 @@ export default class UI extends React.Component {
   }
 
   handleDrop = (e) => {
+    if (this.dataTransferIsText(e.dataTransfer)) return;
     e.preventDefault();
 
     this.setState({ draggingOver: false });
@@ -202,6 +204,10 @@ export default class UI extends React.Component {
     this.setState({ draggingOver: false });
   }
 
+  dataTransferIsText = (dataTransfer) => {
+    return (dataTransfer && Array.from(dataTransfer.types).includes('text/plain') && dataTransfer.items.length === 1);
+  }
+
   closeUploadModal = () => {
     this.setState({ draggingOver: false });
   }