diff --git a/web/pgadmin/static/js/tree/tree.js b/web/pgadmin/static/js/tree/tree.js
index 7e8ba320..f0388f7e 100644
--- a/web/pgadmin/static/js/tree/tree.js
+++ b/web/pgadmin/static/js/tree/tree.js
@@ -161,6 +161,10 @@ export class Tree {
           }
 
           origEvent.dataTransfer.setData('text', JSON.stringify(dropDetails));
+          /* Required by Firefox */
+          if(origEvent.dataTransfer.dropEffect) {
+            origEvent.dataTransfer.dropEffect = 'move';
+          }
 
           /* setDragImage is not supported in IE. We leave it to
            * its default look and feel
diff --git a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
index 8bf041f6..d23a5727 100644
--- a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
+++ b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
@@ -347,13 +347,19 @@ define('tools.querytool', [
       if(self.handler.is_query_tool) {
         self.query_tool_obj.setOption('dragDrop', true);
         self.query_tool_obj.on('drop', (editor, e) => {
+          /* Stop firefox from redirecting */
+          if(e.preventDefault) {
+            e.preventDefault();
+          }
+          if (e.stopPropagation) {
+            e.stopPropagation();
+          }
           var cursor = editor.coordsChar({
             left: e.x,
             top: e.y,
           });
           var dropDetails = JSON.parse(e.dataTransfer.getData('text'));
           e.codemirrorIgnore = true;
-          e.dataTransfer.clearData('text');
           editor.replaceRange(dropDetails.text, cursor);
           editor.focus();
           editor.setSelection({
