diff --git a/web/pgadmin/browser/static/js/browser.js b/web/pgadmin/browser/static/js/browser.js
index 62610bec..66c3d33d 100644
--- a/web/pgadmin/browser/static/js/browser.js
+++ b/web/pgadmin/browser/static/js/browser.js
@@ -539,6 +539,28 @@ define('pgadmin.browser', [
       obj.Events.on('pgadmin:browser:tree:update', obj.onUpdateTreeNode, obj);
       obj.Events.on('pgadmin:browser:tree:refresh', obj.onRefreshTreeNode, obj);
 
+      obj.bind_beforeunload();
+    },
+
+    bind_beforeunload: function() {
+      $(window).on('beforeunload', function(e) {
+        /* Can open you in new tab */
+        let openerBrowser = window.opener ?
+          window.opener.pgAdmin.Browser : window.top.pgAdmin.Browser;
+
+        let tree_save_interval = pgBrowser.get_preference('browser', 'browser_tree_state_save_interval'),
+          confirm_on_refresh_close = openerBrowser.get_preference('browser', 'confirm_on_refresh_close');
+
+        if (!_.isUndefined(tree_save_interval) && tree_save_interval.value !== -1)
+          pgAdmin.Browser.browserTreeState.save_state();
+
+        if(!_.isUndefined(confirm_on_refresh_close) && confirm_on_refresh_close.value) {
+          /* This message will not be displayed in Chrome, Firefox, Safari as they have disabled it*/
+          let msg = S(gettext('Are you sure you want to close the %s browser?')).sprintf(pgBrowser.utils.app_name).value();
+          e.originalEvent.returnValue = msg;
+          return msg;
+        }
+      });
     },
 
     add_menu_category: function(
@@ -1944,24 +1966,5 @@ define('pgadmin.browser', [
     pgAdmin.Browser.editor_shortcut_keys.Tab = 'insertSoftTab';
   }
 
-  $(window).on('beforeunload', function(e) {
-    /* Can open you in new tab */
-    let openerBrowser = window.opener ?
-      window.opener.pgAdmin.Browser : window.top.pgAdmin.Browser;
-
-    let tree_save_interval = pgBrowser.get_preference('browser', 'browser_tree_state_save_interval'),
-      confirm_on_refresh_close = openerBrowser.get_preference('browser', 'confirm_on_refresh_close');
-
-    if (!_.isUndefined(tree_save_interval) && tree_save_interval.value !== -1)
-      pgAdmin.Browser.browserTreeState.save_state();
-
-    if(!_.isUndefined(confirm_on_refresh_close) && confirm_on_refresh_close.value) {
-      /* This message will not be displayed in Chrome, Firefox, Safari as they have disabled it*/
-      let msg = S(gettext('Are you sure you want to close the %s browser?')).sprintf(pgBrowser.utils.app_name).value();
-      e.originalEvent.returnValue = msg;
-      return msg;
-    }
-  });
-
   return pgAdmin.Browser;
 });
diff --git a/web/pgadmin/tools/debugger/static/js/direct.js b/web/pgadmin/tools/debugger/static/js/direct.js
index 2a9347e6..d0bcf3ee 100644
--- a/web/pgadmin/tools/debugger/static/js/direct.js
+++ b/web/pgadmin/tools/debugger/static/js/direct.js
@@ -1572,6 +1572,8 @@ define([
         });
       this.panels = [];
 
+      pgBrowser.bind_beforeunload();
+
       // Below code will be executed for indirect debugging
       // indirect debugging - 0  and for direct debugging - 1
       if (trans_id != undefined && !debug_type) {
diff --git a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
index cd259b80..fcc31cf3 100644
--- a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
+++ b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
@@ -552,6 +552,8 @@ define('tools.querytool', [
         };
       });
 
+      pgBrowser.bind_beforeunload();
+
       /* If the screen width is small and we hover over the Explain Options,
         * the submenu goes behind the screen on the right side.
         * Below logic will make it appear on the left.
