diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:27 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:27 +0000 |
commit | 40a355a42d4a9444dc753c04c6608dade2f06a23 (patch) | |
tree | 871fc667d2de662f171103ce5ec067014ef85e61 /browser/base/content/test/general/browser_double_close_tab.js | |
parent | Adding upstream version 124.0.1. (diff) | |
download | firefox-upstream/125.0.1.tar.xz firefox-upstream/125.0.1.zip |
Adding upstream version 125.0.1.upstream/125.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/base/content/test/general/browser_double_close_tab.js')
-rw-r--r-- | browser/base/content/test/general/browser_double_close_tab.js | 46 |
1 files changed, 10 insertions, 36 deletions
diff --git a/browser/base/content/test/general/browser_double_close_tab.js b/browser/base/content/test/general/browser_double_close_tab.js index 554aeb8077..f5f2f1b6c7 100644 --- a/browser/base/content/test/general/browser_double_close_tab.js +++ b/browser/base/content/test/general/browser_double_close_tab.js @@ -4,24 +4,15 @@ const TEST_PAGE = "http://mochi.test:8888/browser/browser/base/content/test/general/file_double_close_tab.html"; var testTab; -const CONTENT_PROMPT_SUBDIALOG = Services.prefs.getBoolPref( - "prompts.contentPromptSubDialog", - false -); - function waitForDialog(callback) { function onDialogLoaded(nodeOrDialogWindow) { - let node = CONTENT_PROMPT_SUBDIALOG - ? nodeOrDialogWindow.document.querySelector("dialog") - : nodeOrDialogWindow; - Services.obs.removeObserver(onDialogLoaded, "tabmodal-dialog-loaded"); + let node = nodeOrDialogWindow.document.querySelector("dialog"); Services.obs.removeObserver(onDialogLoaded, "common-dialog-loaded"); // Allow dialog's onLoad call to run to completion Promise.resolve().then(() => callback(node)); } // Listen for the dialog being created - Services.obs.addObserver(onDialogLoaded, "tabmodal-dialog-loaded"); Services.obs.addObserver(onDialogLoaded, "common-dialog-loaded"); } @@ -35,9 +26,7 @@ function waitForDialogDestroyed(node, callback) { }); observer.observe(node.parentNode, { childList: true }); - if (CONTENT_PROMPT_SUBDIALOG) { - node.ownerGlobal.addEventListener("unload", done); - } + node.ownerGlobal.addEventListener("unload", done); let failureTimeout = setTimeout(function () { ok(false, "Dialog should have been destroyed"); @@ -49,12 +38,8 @@ function waitForDialogDestroyed(node, callback) { observer.disconnect(); observer = null; - if (CONTENT_PROMPT_SUBDIALOG) { - node.ownerGlobal.removeEventListener("unload", done); - SimpleTest.executeSoon(callback); - } else { - callback(); - } + node.ownerGlobal.removeEventListener("unload", done); + SimpleTest.executeSoon(callback); } } @@ -76,23 +61,12 @@ add_task(async function () { let doCompletion = () => setTimeout(resolveOuter, 0); info("Now checking if dialog is destroyed"); - if (CONTENT_PROMPT_SUBDIALOG) { - ok( - !dialogNode.ownerGlobal || dialogNode.ownerGlobal.closed, - "onbeforeunload dialog should be gone." - ); - if (dialogNode.ownerGlobal && !dialogNode.ownerGlobal.closed) { - dialogNode.acceptDialog(); - } - } else { - ok(!dialogNode.parentNode, "onbeforeunload dialog should be gone."); - if (dialogNode.parentNode) { - // Failed to remove onbeforeunload dialog, so do it ourselves: - let leaveBtn = dialogNode.querySelector(".tabmodalprompt-button0"); - waitForDialogDestroyed(dialogNode, doCompletion); - EventUtils.synthesizeMouseAtCenter(leaveBtn, {}); - return; - } + ok( + !dialogNode.ownerGlobal || dialogNode.ownerGlobal.closed, + "onbeforeunload dialog should be gone." + ); + if (dialogNode.ownerGlobal && !dialogNode.ownerGlobal.closed) { + dialogNode.acceptDialog(); } doCompletion(); |