From 1dbc79d0c577842c299ef3d65497783d03ad9476 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 04:43:37 +0000 Subject: [PATCH 01/48] Bug 1553804: Part 1 - Don't allow opening content windows with chrome openers. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45326 --HG-- extra : source : 1ed250faeb2e8a83167f2d8358a6dc4a396ead78 --- .../windowwatcher/nsWindowWatcher.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/toolkit/components/windowwatcher/nsWindowWatcher.cpp b/toolkit/components/windowwatcher/nsWindowWatcher.cpp index c72095784dce..32fb3e664be7 100644 --- a/toolkit/components/windowwatcher/nsWindowWatcher.cpp +++ b/toolkit/components/windowwatcher/nsWindowWatcher.cpp @@ -728,8 +728,24 @@ nsresult nsWindowWatcher::OpenWindowInternal( // GetSubjectPrincipal()? dom::AutoJSAPI jsapiChromeGuard; + nsCOMPtr chromeWin = do_QueryInterface(aParent); + bool windowTypeIsChrome = chromeFlags & nsIWebBrowserChrome::CHROME_OPENAS_CHROME; + + if (!aForceNoOpener) { + if (chromeWin && !windowTypeIsChrome) { + NS_WARNING( + "Content windows may never have chrome windows as their openers."); + return NS_ERROR_INVALID_ARG; + } + if (aParent && !chromeWin && windowTypeIsChrome) { + NS_WARNING( + "Chrome windows may never have content windows as their openers."); + return NS_ERROR_INVALID_ARG; + } + } + if (isCallerChrome && !hasChromeParent && !windowTypeIsChrome) { // open() is called from chrome on a non-chrome window, initialize an // AutoJSAPI with the callee to prevent the caller's privileges from leaking @@ -776,7 +792,6 @@ nsresult nsWindowWatcher::OpenWindowInternal( // Now check whether it's ok to ask a window provider for a window. Don't // do it if we're opening a dialog or if our parent is a chrome window or // if we're opening something that has modal, dialog, or chrome flags set. - nsCOMPtr chromeWin = do_QueryInterface(aParent); if (!aDialog && !chromeWin && !(chromeFlags & (nsIWebBrowserChrome::CHROME_MODAL | nsIWebBrowserChrome::CHROME_OPENAS_DIALOG | From f153f423d4527f051a477acc96d9a50024c8e2b7 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 04:43:39 +0000 Subject: [PATCH 02/48] Bug 1553804: Part 2 - Assert opener BrowsingContext type always matches its own type. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45327 --HG-- extra : source : 3acf056e792ec386ff9c534237c4f8025dcb747c --- docshell/base/BrowsingContext.cpp | 2 ++ docshell/base/BrowsingContext.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/docshell/base/BrowsingContext.cpp b/docshell/base/BrowsingContext.cpp index 9ac8cb999e04..56019b8895f2 100644 --- a/docshell/base/BrowsingContext.cpp +++ b/docshell/base/BrowsingContext.cpp @@ -123,6 +123,8 @@ already_AddRefed BrowsingContext::Create( // using transactions to set them, as we haven't been attached yet. context->mName = aName; if (aOpener) { + MOZ_DIAGNOSTIC_ASSERT(aOpener->Group() == context->Group()); + MOZ_DIAGNOSTIC_ASSERT(aOpener->mType == context->mType); context->mOpenerId = aOpener->Id(); context->mHadOriginalOpener = true; } diff --git a/docshell/base/BrowsingContext.h b/docshell/base/BrowsingContext.h index 3e17dc4417fd..e4c2fa31673a 100644 --- a/docshell/base/BrowsingContext.h +++ b/docshell/base/BrowsingContext.h @@ -212,12 +212,14 @@ class BrowsingContext : public nsWrapperCache, public BrowsingContextBase { already_AddRefed GetOpener() const { RefPtr opener(Get(mOpenerId)); if (!mIsDiscarded && opener && !opener->mIsDiscarded) { + MOZ_DIAGNOSTIC_ASSERT(opener->mType == mType); return opener.forget(); } return nullptr; } void SetOpener(BrowsingContext* aOpener) { MOZ_DIAGNOSTIC_ASSERT(!aOpener || aOpener->Group() == Group()); + MOZ_DIAGNOSTIC_ASSERT(!aOpener || aOpener->mType == mType); SetOpenerId(aOpener ? aOpener->Id() : 0); } From b5a265b609ab67bdac627bbbea01a3f6175bf079 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 04:43:46 +0000 Subject: [PATCH 03/48] Bug 1553804: Part 3 - Assert we never create chrome BrowsingContexts in/send them to child processes. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45328 --HG-- extra : source : 1574aecf31775e67f4810595207f3e807b4a0e4e --- docshell/base/BrowsingContext.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docshell/base/BrowsingContext.cpp b/docshell/base/BrowsingContext.cpp index 56019b8895f2..d6b0443cb673 100644 --- a/docshell/base/BrowsingContext.cpp +++ b/docshell/base/BrowsingContext.cpp @@ -101,6 +101,8 @@ already_AddRefed BrowsingContext::Create( Type aType) { MOZ_DIAGNOSTIC_ASSERT(!aParent || aParent->mType == aType); + MOZ_DIAGNOSTIC_ASSERT(aType != Type::Chrome || XRE_IsParentProcess()); + uint64_t id = nsContentUtils::GenerateBrowsingContextId(); MOZ_LOG(GetLog(), LogLevel::Debug, @@ -1031,7 +1033,7 @@ void BrowsingContext::Transaction::Apply(BrowsingContext* aBrowsingContext) { } BrowsingContext::IPCInitializer BrowsingContext::GetIPCInitializer() { - // FIXME: We should assert that we're loaded in-content here. (bug 1553804) + MOZ_DIAGNOSTIC_ASSERT(mType == Type::Content); IPCInitializer init; init.mId = Id(); From 99714a4e22a208f219dd55dde8a8b97d079075f4 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 04:43:48 +0000 Subject: [PATCH 04/48] Bug 1553804: Part 4 - Make some evil tests less evil/failing. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45329 --HG-- extra : source : acff4a6636719d9302d1a893e1f3ca392c8f99e5 extra : histedit_source : c727f4637a48f89ecb29233dba0a4aba0ed9ffd9%2Cfd70bbd8400e8aba9a4dc57956bfc9f1320e20db --- .../content/test/general/browser_bug484315.js | 32 +++++++------------ .../general/browser_fullscreen-window-open.js | 1 + .../test/browser/browser_ext_sidebarAction.js | 3 +- .../test/browser/browser_window_close.js | 2 +- .../test/browser_dbg_multiple-windows.js | 2 +- docshell/test/browser/browser_bug388121-2.js | 3 +- .../browser_test_toolbars_visibility.js | 4 +-- .../test/browser/antitracking_head.js | 6 +++- 8 files changed, 25 insertions(+), 28 deletions(-) diff --git a/browser/base/content/test/general/browser_bug484315.js b/browser/base/content/test/general/browser_bug484315.js index 8ea767746793..21b4e69a33e6 100644 --- a/browser/base/content/test/general/browser_bug484315.js +++ b/browser/base/content/test/general/browser_bug484315.js @@ -1,24 +1,14 @@ -function test() { - var contentWin = window.open("about:blank", "", "width=100,height=100"); - for (let win of Services.wm.getEnumerator("navigator:browser")) { - if (win.content == contentWin) { - Services.prefs.setBoolPref("browser.tabs.closeWindowWithLastTab", false); - win.gBrowser.removeCurrentTab(); - ok(win.closed, "popup is closed"); +add_task(async function test() { + window.open("about:blank", "", "width=100,height=100,noopener"); - // clean up - if (!win.closed) { - win.close(); - } - if ( - Services.prefs.prefHasUserValue("browser.tabs.closeWindowWithLastTab") - ) { - Services.prefs.clearUserPref("browser.tabs.closeWindowWithLastTab"); - } + let win = Services.wm.getMostRecentWindow("navigator:browser"); + Services.prefs.setBoolPref("browser.tabs.closeWindowWithLastTab", false); + win.gBrowser.removeCurrentTab(); + ok(win.closed, "popup is closed"); - return; - } + // clean up + if (!win.closed) { + win.close(); } - - throw new Error("couldn't find the content window"); -} + Services.prefs.clearUserPref("browser.tabs.closeWindowWithLastTab"); +}); diff --git a/browser/base/content/test/general/browser_fullscreen-window-open.js b/browser/base/content/test/general/browser_fullscreen-window-open.js index a6e353cc188e..db00af27256e 100644 --- a/browser/base/content/test/general/browser_fullscreen-window-open.js +++ b/browser/base/content/test/general/browser_fullscreen-window-open.js @@ -181,6 +181,7 @@ function test_open_from_chrome() { message: { title: "test_open_from_chrome", param: "", + option: "noopener", }, finalizeFn() {}, }); diff --git a/browser/components/extensions/test/browser/browser_ext_sidebarAction.js b/browser/components/extensions/test/browser/browser_ext_sidebarAction.js index fcf98bc83777..be9c85a479fd 100644 --- a/browser/components/extensions/test/browser/browser_ext_sidebarAction.js +++ b/browser/components/extensions/test/browser/browser_ext_sidebarAction.js @@ -180,7 +180,8 @@ add_task(async function sidebar_isOpen() { }); info("Open a new window"); - let newWin = open(); + open("", "", "noopener"); + let newWin = Services.wm.getMostRecentWindow("navigator:browser"); info("The new window has no sidebar"); await sendMessage(extension1, "isOpen", { result: false }); diff --git a/devtools/client/responsive/test/browser/browser_window_close.js b/devtools/client/responsive/test/browser/browser_window_close.js index 9c82df770307..fb6b7f8fc728 100644 --- a/devtools/client/responsive/test/browser/browser_window_close.js +++ b/devtools/client/responsive/test/browser/browser_window_close.js @@ -5,7 +5,7 @@ add_task(async function() { const newWindowPromise = BrowserTestUtils.waitForNewWindow(); - window.open("data:text/html;charset=utf-8,", "_blank"); + window.open("data:text/html;charset=utf-8,", "_blank", "noopener,all"); const newWindow = await newWindowPromise; newWindow.focus(); diff --git a/devtools/client/shared/test/browser_dbg_multiple-windows.js b/devtools/client/shared/test/browser_dbg_multiple-windows.js index e8a71e5de4db..ded2e48ee64f 100644 --- a/devtools/client/shared/test/browser_dbg_multiple-windows.js +++ b/devtools/client/shared/test/browser_dbg_multiple-windows.js @@ -112,6 +112,6 @@ async function continue_remove_tab(client, tab) { async function addWindow(url) { info("Adding window: " + url); const onNewWindow = BrowserTestUtils.waitForNewWindow({ url }); - window.open(url); + window.open(url, "_blank", "noopener"); return onNewWindow; } diff --git a/docshell/test/browser/browser_bug388121-2.js b/docshell/test/browser/browser_bug388121-2.js index 6c09aa481708..d6e88887dc95 100644 --- a/docshell/test/browser/browser_bug388121-2.js +++ b/docshell/test/browser/browser_bug388121-2.js @@ -38,7 +38,8 @@ function test() { function doTest() { uri = uris[iteration - 1]; - w = window.open(uri, "_blank", "width=10,height=10"); + window.open(uri, "_blank", "width=10,height=10,noopener"); + w = Services.wm.getMostRecentWindow("navigator:browser").content; var prin = w.document.nodePrincipal; if (!uri) { uri = undefined; diff --git a/dom/tests/browser/browser_test_toolbars_visibility.js b/dom/tests/browser/browser_test_toolbars_visibility.js index 7ddb0256fa9b..fcaa1f2ecde9 100644 --- a/dom/tests/browser/browser_test_toolbars_visibility.js +++ b/dom/tests/browser/browser_test_toolbars_visibility.js @@ -228,7 +228,7 @@ add_task(async function() { let defaultWindowPromise = BrowserTestUtils.waitForNewWindow({ url: TARGET_PAGE, }); - window.open(TARGET_PAGE, "_blank"); + window.open(TARGET_PAGE, "_blank", "noopener"); let defaultWindow = await defaultWindowPromise; // Check that all toolbars are visible @@ -237,7 +237,7 @@ add_task(async function() { // Now lets open a window with toolbars hidden from this chrome context let features = - "location=no, personalbar=no, toolbar=no, scrollbars=no, menubar=no, status=no"; + "location=no, personalbar=no, toolbar=no, scrollbars=no, menubar=no, status=no, noopener"; let popupWindowPromise = BrowserTestUtils.waitForNewWindow({ url: TARGET_PAGE, }); diff --git a/toolkit/components/antitracking/test/browser/antitracking_head.js b/toolkit/components/antitracking/test/browser/antitracking_head.js index 8d6fb644f411..32837f042a37 100644 --- a/toolkit/components/antitracking/test/browser/antitracking_head.js +++ b/toolkit/components/antitracking/test/browser/antitracking_head.js @@ -317,7 +317,11 @@ this.AntiTracking = { }); info("Let's interact with the tracker"); - window.open(TEST_3RD_PARTY_DOMAIN + TEST_PATH + "3rdPartyOpenUI.html"); + window.open( + TEST_3RD_PARTY_DOMAIN + TEST_PATH + "3rdPartyOpenUI.html", + "", + "noopener" + ); await windowClosed; }, From 7dbe15f5f14d619ec4faf46fec3d82020c1d7079 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 04:43:55 +0000 Subject: [PATCH 05/48] Bug 1553804: Part 5 - Fix callers which create chrome windows with content openers. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45656 --HG-- extra : source : 301e0d883a5f39053ab02ba11133f1b23156e240 extra : histedit_source : 241111e45e10e49eb5add12e1b69689ea9783b16 --- browser/components/preferences/in-content/subdialogs.js | 3 ++- browser/modules/SiteDataManager.jsm | 2 +- toolkit/components/prompts/src/Prompter.jsm | 2 +- toolkit/mozapps/handling/ContentDispatchChooser.jsm | 3 +++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/browser/components/preferences/in-content/subdialogs.js b/browser/components/preferences/in-content/subdialogs.js index 3956358657d6..11829bbef68a 100644 --- a/browser/components/preferences/in-content/subdialogs.js +++ b/browser/components/preferences/in-content/subdialogs.js @@ -100,7 +100,8 @@ SubDialog.prototype = { this._addDialogEventListeners(); let features = - (aFeatures ? aFeatures + "," : "") + "resizable,dialog=no,centerscreen"; + (aFeatures ? aFeatures + "," : "") + + "resizable,dialog=no,centerscreen,chrome=no"; let dialog = window.openDialog( aURL, `dialogFrame-${this._id}`, diff --git a/browser/modules/SiteDataManager.jsm b/browser/modules/SiteDataManager.jsm index 4f12edf95691..aedde455b1ce 100644 --- a/browser/modules/SiteDataManager.jsm +++ b/browser/modules/SiteDataManager.jsm @@ -508,7 +508,7 @@ var SiteDataManager = { allowed: false, }; let features = "centerscreen,chrome,modal,resizable=no"; - win.openDialog( + win.docShell.rootTreeItem.domWindow.openDialog( "chrome://browser/content/preferences/siteDataRemoveSelected.xul", "", features, diff --git a/toolkit/components/prompts/src/Prompter.jsm b/toolkit/components/prompts/src/Prompter.jsm index e560e8ce0b84..3c968827712a 100644 --- a/toolkit/components/prompts/src/Prompter.jsm +++ b/toolkit/components/prompts/src/Prompter.jsm @@ -450,7 +450,7 @@ function openModalWindow(domWin, uri, args) { // will do that. Similarly for enterModalState / leaveModalState. Services.ww.openWindow( - domWin, + domWin.docShell.rootTreeItem.domWindow, uri, "_blank", "centerscreen,chrome,modal,titlebar", diff --git a/toolkit/mozapps/handling/ContentDispatchChooser.jsm b/toolkit/mozapps/handling/ContentDispatchChooser.jsm index 51c13ecab5d7..0e8e4590f9e9 100644 --- a/toolkit/mozapps/handling/ContentDispatchChooser.jsm +++ b/toolkit/mozapps/handling/ContentDispatchChooser.jsm @@ -23,6 +23,9 @@ nsContentDispatchChooser.prototype = { try { if (aWindowContext) { window = aWindowContext.getInterface(Ci.nsIDOMWindow); + if (window) { + window = window.docShell.rootTreeItem.domWindow; + } } } catch (e) { /* it's OK to not have a window */ From 685d91c9011601958f28768fdb3aefcfb743a67e Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 20 Sep 2019 10:18:15 -0700 Subject: [PATCH 06/48] Bug 1553804: Part 6 - Fix chrome mochitests which open chrome windows with content openers. r=nika Differential Revision: https://phabricator.services.mozilla.com/D45828 MANUAL PUSH: Cannot update reopened Phabricator revisions. --HG-- extra : source : 86b3d469b4ff9f22e5757f83450b956a4c769785 extra : histedit_source : 2bf945343632b15eb79cf6b2ddd3ce097ddf70de%2Caec93d9f11bc1c802b63793cd5818530b64e9b4b --- accessible/tests/mochitest/browser.js | 2 +- .../events/docload/test_docload_root.html | 2 +- .../events/docload/test_docload_shutdown.html | 2 +- .../mochitest/focus/test_focusedChild.html | 3 +- docshell/test/chrome/bug112564_window.xul | 6 ++-- docshell/test/chrome/bug113934_window.xul | 2 +- docshell/test/chrome/bug215405_window.xul | 4 +-- docshell/test/chrome/bug364461_window.xul | 6 ++-- docshell/test/chrome/bug396519_window.xul | 6 ++-- docshell/test/chrome/bug449778_window.xul | 2 +- docshell/test/chrome/bug449780_window.xul | 2 +- docshell/test/chrome/bug89419_window.xul | 2 +- docshell/test/chrome/bug92598_window.xul | 6 ++-- docshell/test/chrome/docshell_helpers.js | 3 ++ docshell/test/chrome/mozFrameType_window.xul | 4 +-- docshell/test/chrome/test_bug112564.xul | 4 +-- docshell/test/chrome/test_bug113934.xul | 4 +-- docshell/test/chrome/test_bug215405.xul | 4 +-- docshell/test/chrome/test_bug293235.xul | 4 +-- docshell/test/chrome/test_bug294258.xul | 4 +-- docshell/test/chrome/test_bug298622.xul | 4 +-- docshell/test/chrome/test_bug301397.xul | 4 +-- docshell/test/chrome/test_bug303267.xul | 4 +-- docshell/test/chrome/test_bug311007.xul | 4 +-- docshell/test/chrome/test_bug321671.xul | 4 +-- docshell/test/chrome/test_bug360511.xul | 4 +-- docshell/test/chrome/test_bug364461.xul | 4 +-- docshell/test/chrome/test_bug396519.xul | 4 +-- docshell/test/chrome/test_bug396649.xul | 4 +-- docshell/test/chrome/test_bug449778.xul | 4 +-- docshell/test/chrome/test_bug449780.xul | 4 +-- docshell/test/chrome/test_bug456980.xul | 4 +-- docshell/test/chrome/test_bug582176.xul | 4 +-- docshell/test/chrome/test_bug608669.xul | 10 +++++-- docshell/test/chrome/test_bug662200.xul | 4 +-- docshell/test/chrome/test_bug690056.xul | 4 +-- docshell/test/chrome/test_bug89419.xul | 4 +-- docshell/test/chrome/test_bug92598.xul | 4 +-- docshell/test/chrome/test_mozFrameType.xul | 4 +-- .../test/chrome/test_principalInherit.xul | 2 +- dom/base/test/chrome/cpows_parent.xul | 14 +++++----- dom/base/test/chrome/file_bug1139964.xul | 4 +-- dom/base/test/chrome/file_bug1209621.xul | 6 ++-- dom/base/test/chrome/file_bug549682.xul | 6 ++-- dom/base/test/chrome/file_bug616841.xul | 4 +-- dom/base/test/chrome/file_bug816340.xul | 4 +-- dom/base/test/chrome/file_bug990812-1.xul | 6 ++-- dom/base/test/chrome/file_bug990812-2.xul | 4 +-- dom/base/test/chrome/file_bug990812-3.xul | 4 +-- dom/base/test/chrome/file_bug990812-4.xul | 4 +-- dom/base/test/chrome/file_bug990812-5.xul | 4 +-- dom/base/test/chrome/test_bug1139964.xul | 2 +- dom/base/test/chrome/test_bug1209621.xul | 2 +- dom/base/test/chrome/test_bug549682.xul | 2 +- dom/base/test/chrome/test_bug616841.xul | 2 +- dom/base/test/chrome/test_bug814638.xul | 4 +-- dom/base/test/chrome/test_bug816340.xul | 2 +- dom/base/test/chrome/test_bug990812.xul | 2 +- .../test/chrome/test_chromeOuterWindowID.xul | 2 +- dom/base/test/chrome/test_cpows.xul | 2 +- .../chrome/test_document-element-inserted.xul | 2 +- .../chrome/test_nsITextInputProcessor.xul | 4 +-- .../test/chrome/test_swapFrameLoaders.xul | 4 +-- dom/base/test/chrome/test_title.xul | 4 +-- dom/base/test/chrome/title_window.xul | 2 +- .../chrome/window_nsITextInputProcessor.xul | 4 +-- .../test/chrome/window_swapFrameLoaders.xul | 2 +- dom/base/test/test_bug1016960.html | 4 +-- .../chrome/test_drawWindow_widget_layers.html | 4 +-- dom/events/test/test_bug1412775.xul | 2 +- dom/events/test/test_bug617528.xul | 2 +- dom/ipc/tests/process_error.xul | 8 +++--- dom/ipc/tests/test_process_error.xul | 2 +- .../tests/mm_messageChannelParent.js | 10 +++---- .../test_messageChannelWithMessageManager.xul | 2 +- ...sageChannelWithMessageManagerNotRemote.xul | 2 +- .../test_xulbrowser_plugin_visibility.xul | 2 +- .../xulbrowser_plugin_visibility.xul | 8 +++--- .../chrome/DOMWindowCreated_chrome.xul | 2 +- .../chrome/MozDomFullscreen_chrome.xul | 6 ++-- .../chrome/file_DOM_element_instanceof.xul | 6 ++-- .../chrome/file_bug1224790-1_modal.xul | 2 +- .../chrome/file_bug1224790-2_modal.xul | 2 +- dom/tests/mochitest/chrome/file_bug799299.xul | 22 +++++++-------- dom/tests/mochitest/chrome/file_bug800817.xul | 28 +++++++++---------- dom/tests/mochitest/chrome/file_bug830858.xul | 26 ++++++++--------- .../chrome/file_clipboard_events_chrome.html | 2 +- dom/tests/mochitest/chrome/fullscreen.xul | 2 +- .../mochitest/chrome/sizemode_attribute.xul | 4 +-- .../chrome/test_DOMWindowCreated.xul | 2 +- .../chrome/test_DOM_element_instanceof.xul | 2 +- .../chrome/test_MozDomFullscreen_event.xul | 3 +- .../mochitest/chrome/test_activation.xul | 2 +- .../mochitest/chrome/test_bug1224790-1.xul | 2 +- .../mochitest/chrome/test_bug1224790-2.xul | 2 +- dom/tests/mochitest/chrome/test_bug799299.xul | 2 +- dom/tests/mochitest/chrome/test_bug800817.xul | 4 +-- dom/tests/mochitest/chrome/test_bug830858.xul | 2 +- .../chrome/test_clipboard_events_chrome.html | 2 +- .../mochitest/chrome/test_docshell_swap.xul | 4 +-- dom/tests/mochitest/chrome/test_focus.xul | 2 +- .../mochitest/chrome/test_focus_docnav.xul | 2 +- .../mochitest/chrome/test_fullscreen.xul | 2 +- .../chrome/test_sizemode_attribute.xul | 2 +- .../mochitest/chrome/window_activation.xul | 10 +++---- dom/tests/mochitest/chrome/window_focus.xul | 11 ++++---- .../mochitest/chrome/window_focus_docnav.xul | 11 ++++---- .../mochitest/keyhandling/test_input.html | 8 +++--- .../mochitest/keyhandling/test_textarea.html | 8 +++--- .../mochitest/keyhandling/test_windowed.xul | 3 +- dom/xul/test/test_bug583948.xul | 7 +++-- dom/xul/test/test_bug757137.xul | 2 +- js/xpconnect/tests/chrome/bug503926.xul | 2 +- js/xpconnect/tests/chrome/file_bug618176.xul | 4 +-- .../tests/chrome/test_bug1124898.html | 2 +- js/xpconnect/tests/chrome/test_bug503926.xul | 2 +- js/xpconnect/tests/chrome/test_bug618176.xul | 2 +- .../base/tests/chrome/bug1041200_window.html | 10 +++---- .../chrome_content_integration_window.xul | 2 +- .../chrome/chrome_over_plugin_window.xul | 2 +- .../chrome/default_background_window.xul | 2 +- .../chrome/dialog_with_positioning_window.xul | 8 +++--- layout/base/tests/chrome/file_bug1018265.xul | 6 ++-- .../chrome/printpreview_bug396024_helper.xul | 8 +++--- .../chrome/printpreview_bug482976_helper.xul | 8 +++--- .../base/tests/chrome/printpreview_helper.xul | 10 +++---- layout/base/tests/chrome/test_bug1018265.xul | 2 +- layout/base/tests/chrome/test_bug1041200.xul | 4 +-- layout/base/tests/chrome/test_bug458898.html | 2 +- .../test_chrome_content_integration.xul | 4 +-- .../tests/chrome/test_chrome_over_plugin.xul | 4 +-- .../test_css_visibility_propagation.xul | 12 ++++---- .../tests/chrome/test_default_background.xul | 4 +-- .../chrome/test_dialog_with_positioning.html | 2 +- .../base/tests/chrome/test_printpreview.xul | 2 +- .../chrome/test_printpreview_bug396024.xul | 2 +- .../chrome/test_printpreview_bug482976.xul | 2 +- layout/forms/test/bug665540_window.xul | 2 +- layout/forms/test/test_bug665540.html | 3 +- layout/generic/test/file_bug514732_window.xul | 4 +++ layout/generic/test/test_bug514732-2.xul | 4 +-- layout/xul/test/test_resizer.xul | 4 +-- layout/xul/test/test_windowminmaxsize.xul | 4 +-- layout/xul/test/window_resizer.xul | 2 +- layout/xul/test/window_resizer_element.xul | 8 +++--- .../mochitest/tests/SimpleTest/SimpleTest.js | 4 +-- .../aboutmemory/tests/test_aboutmemory5.xul | 2 +- .../tests/test_dumpGCAndCCLogsToFile.xul | 2 +- .../tests/test_memoryReporters2.xul | 2 +- .../chrome/browser_disableglobalhistory.xul | 4 +-- .../test_browser_disableglobalhistory.xul | 2 +- .../windowwatcher/test/file_test_dialog.html | 2 +- .../test/test_alwaysOnTop_windows.html | 4 +-- .../test/test_dialog_arguments.html | 4 +-- .../test/test_modal_windows.html | 2 +- .../tests/chrome/test_persistence.xul | 4 +-- .../tests/chrome/window_persistence.xul | 6 ++-- .../content/tests/chrome/bug263683_window.xul | 4 +-- .../content/tests/chrome/bug304188_window.xul | 4 +-- .../content/tests/chrome/bug331215_window.xul | 4 +-- .../content/tests/chrome/bug360437_window.xul | 4 +-- .../content/tests/chrome/bug366992_window.xul | 4 +-- .../content/tests/chrome/bug409624_window.xul | 2 +- .../content/tests/chrome/bug429723_window.xul | 4 +-- .../content/tests/chrome/bug451540_window.xul | 4 +-- .../content/tests/chrome/bug624329_window.xul | 2 +- .../chrome/findbar_entireword_window.xul | 4 +-- .../tests/chrome/findbar_events_window.xul | 4 +-- .../content/tests/chrome/findbar_window.xul | 4 +-- .../tests/chrome/frame_popup_anchor.xul | 10 +++---- .../frame_subframe_origin_subframe1.xul | 4 +-- .../frame_subframe_origin_subframe2.xul | 6 ++-- .../tests/chrome/test_browser_drop.xul | 2 +- .../content/tests/chrome/test_bug263683.xul | 4 +-- .../content/tests/chrome/test_bug304188.xul | 4 +-- .../content/tests/chrome/test_bug331215.xul | 4 +-- .../content/tests/chrome/test_bug360437.xul | 4 +-- .../content/tests/chrome/test_bug366992.xul | 4 +-- .../content/tests/chrome/test_bug409624.xul | 4 +-- .../content/tests/chrome/test_bug429723.xul | 4 +-- .../content/tests/chrome/test_bug451540.xul | 4 +-- .../content/tests/chrome/test_bug624329.xul | 2 +- .../tests/chrome/test_chromemargin.xul | 2 +- .../content/tests/chrome/test_cursorsnap.xul | 24 ++++++++-------- .../content/tests/chrome/test_dialogfocus.xul | 2 +- .../tests/chrome/test_edit_contextmenu.html | 2 +- toolkit/content/tests/chrome/test_findbar.xul | 2 +- .../tests/chrome/test_findbar_entireword.xul | 4 +-- .../tests/chrome/test_findbar_events.xul | 4 +-- toolkit/content/tests/chrome/test_keys.xul | 2 +- .../content/tests/chrome/test_largemenu.html | 2 +- .../tests/chrome/test_maximized_persist.xul | 5 ++-- .../tests/chrome/test_menuitem_commands.xul | 8 +++--- .../tests/chrome/test_navigate_persist.html | 8 ++++-- toolkit/content/tests/chrome/test_panel.xul | 2 +- .../tests/chrome/test_panel_anchoradjust.xul | 2 +- .../content/tests/chrome/test_panel_focus.xul | 2 +- .../tests/chrome/test_popup_anchor.xul | 2 +- .../tests/chrome/test_popup_anchoratrect.xul | 2 +- .../test_popup_preventdefault_chrome.xul | 2 +- .../content/tests/chrome/test_preferences.xul | 14 +++++----- .../chrome/test_preferences_beforeaccept.xul | 2 +- .../test_preferences_onsyncfrompreference.xul | 2 +- .../tests/chrome/test_screenPersistence.xul | 10 ++++--- .../content/tests/chrome/test_showcaret.xul | 2 +- .../tests/chrome/test_subframe_origin.xul | 2 +- .../content/tests/chrome/test_titlebar.xul | 2 +- toolkit/content/tests/chrome/test_tooltip.xul | 2 +- .../chrome/test_window_intrinsic_size.xul | 3 +- .../tests/chrome/window_browser_drop.xul | 6 ++-- .../tests/chrome/window_chromemargin.xul | 6 ++-- .../tests/chrome/window_cursorsnap_dialog.xul | 18 ++++++------ toolkit/content/tests/chrome/window_keys.xul | 6 ++-- .../content/tests/chrome/window_largemenu.xul | 10 +++---- .../tests/chrome/window_maximized_persist.xul | 2 +- toolkit/content/tests/chrome/window_panel.xul | 8 +++--- .../chrome/window_panel_anchoradjust.xul | 8 +++--- .../tests/chrome/window_panel_focus.xul | 8 +++--- .../tests/chrome/window_popup_anchor.xul | 2 +- .../chrome/window_popup_anchoratrect.xul | 8 +++--- .../window_popup_preventdefault_chrome.xul | 12 ++++---- .../tests/chrome/window_subframe_origin.xul | 6 ++-- .../content/tests/chrome/window_titlebar.xul | 6 ++-- .../content/tests/chrome/window_tooltip.xul | 4 +-- toolkit/content/tests/widgets/popup_shared.js | 4 +++ widget/tests/bug586713_window.xul | 4 +-- widget/tests/chrome_context_menus_win.xul | 6 ++-- widget/tests/native_menus_window.xul | 4 +-- widget/tests/native_mouse_mac_window.xul | 10 +++---- .../tests/standalone_native_menu_window.xul | 6 ++-- widget/tests/system_font_changes.xul | 6 ++-- widget/tests/test_bug1123480.xul | 2 +- widget/tests/test_bug429954.xul | 7 +++-- widget/tests/test_bug478536.xul | 4 +-- widget/tests/test_bug522217.xul | 4 +-- widget/tests/test_bug538242.xul | 5 ++-- widget/tests/test_bug586713.xul | 4 +-- .../tests/test_chrome_context_menus_win.xul | 3 +- .../test_composition_text_querycontent.xul | 4 +-- .../test_input_events_on_deactive_window.xul | 5 ++-- widget/tests/test_mouse_scroll.xul | 4 +-- widget/tests/test_native_menus.xul | 4 +-- widget/tests/test_native_mouse_mac.xul | 4 +-- widget/tests/test_picker_no_crash.html | 2 +- widget/tests/test_position_on_resize.xul | 14 ++++------ widget/tests/test_secure_input.html | 4 +-- widget/tests/test_sizemode_events.xul | 3 +- widget/tests/test_standalone_native_menu.xul | 4 +-- widget/tests/test_system_font_changes.xul | 4 +-- widget/tests/test_transferable_overflow.xul | 2 +- widget/tests/test_wheeltransaction.xul | 4 +-- widget/tests/window_bug429954.xul | 8 +++--- widget/tests/window_bug478536.xul | 8 +++--- widget/tests/window_bug522217.xul | 10 +++---- .../window_composition_text_querycontent.xul | 16 +++++------ widget/tests/window_imestate_iframes.html | 8 +++--- widget/tests/window_mouse_scroll_win.html | 14 +++++----- widget/tests/window_wheeltransaction.xul | 8 +++--- 258 files changed, 616 insertions(+), 587 deletions(-) diff --git a/accessible/tests/mochitest/browser.js b/accessible/tests/mochitest/browser.js index e489d1265f4c..456d47639f3c 100644 --- a/accessible/tests/mochitest/browser.js +++ b/accessible/tests/mochitest/browser.js @@ -119,7 +119,7 @@ function openBrowserWindowIntl() { } } - gBrowserContext.browserWnd = window.openDialog( + gBrowserContext.browserWnd = window.docShell.rootTreeItem.domWindow.openDialog( AppConstants.BROWSER_CHROME_URL, "_blank", params, diff --git a/accessible/tests/mochitest/events/docload/test_docload_root.html b/accessible/tests/mochitest/events/docload/test_docload_root.html index 3c90545a71c2..daa681164352 100644 --- a/accessible/tests/mochitest/events/docload/test_docload_root.html +++ b/accessible/tests/mochitest/events/docload/test_docload_root.html @@ -38,7 +38,7 @@ this.eventSeq = [ new invokerChecker(EVENT_REORDER, gRootAcc) ]; - this.invoke = () => (gDialog = window.openDialog(aURL)); + this.invoke = () => (gDialog = docShell.rootTreeItem.domWindow.openDialog(aURL)); this.finalCheck = () => { const accTree = { diff --git a/accessible/tests/mochitest/events/docload/test_docload_shutdown.html b/accessible/tests/mochitest/events/docload/test_docload_shutdown.html index 1fa12267e822..42bf4e7bb197 100644 --- a/accessible/tests/mochitest/events/docload/test_docload_shutdown.html +++ b/accessible/tests/mochitest/events/docload/test_docload_shutdown.html @@ -54,7 +54,7 @@ ]; - this.invoke = () => gDialog = window.openDialog(aURL); + this.invoke = () => gDialog = window.docShell.rootTreeItem.domWindow.openDialog(aURL); this.finalCheck = () => { const accTree = { diff --git a/accessible/tests/mochitest/focus/test_focusedChild.html b/accessible/tests/mochitest/focus/test_focusedChild.html index f88aeaea2589..ff40204f0351 100644 --- a/accessible/tests/mochitest/focus/test_focusedChild.html +++ b/accessible/tests/mochitest/focus/test_focusedChild.html @@ -24,7 +24,8 @@ this) ]; this.invoke = function openWnd_invoke() { - this.dialog = window.openDialog("about:mozilla", + this.dialog = window.docShell.rootTreeItem.domWindow + .openDialog("about:mozilla", "AboutMozilla", "chrome,width=600,height=600"); }; diff --git a/docshell/test/chrome/bug112564_window.xul b/docshell/test/chrome/bug112564_window.xul index 720b6d271105..44ace1f1daec 100644 --- a/docshell/test/chrome/bug112564_window.xul +++ b/docshell/test/chrome/bug112564_window.xul @@ -22,11 +22,11 @@ var gExpected = []; function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(a, b, message) { - window.opener.wrappedJSObject.SimpleTest.is(a, b, message); + window.arguments[0].SimpleTest.is(a, b, message); } function finish() { @@ -39,7 +39,7 @@ history.legacySHistory.PurgeHistory(history.count); window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function onLoad() { diff --git a/docshell/test/chrome/bug113934_window.xul b/docshell/test/chrome/bug113934_window.xul index fdbbffedf16c..bb50b76c25b1 100644 --- a/docshell/test/chrome/bug113934_window.xul +++ b/docshell/test/chrome/bug113934_window.xul @@ -16,7 +16,7 @@ var imports = [ "SimpleTest", "is", "isnot", "ok", "snapshotWindow", "compareSnapshots", "onerror" ]; for (var name of imports) { - window[name] = window.opener.wrappedJSObject[name]; + window[name] = window.arguments[0][name]; } function $(id) { diff --git a/docshell/test/chrome/bug215405_window.xul b/docshell/test/chrome/bug215405_window.xul index 3b1300735ef9..5c6744cf893e 100644 --- a/docshell/test/chrome/bug215405_window.xul +++ b/docshell/test/chrome/bug215405_window.xul @@ -17,7 +17,7 @@ const {BrowserTestUtils} = ChromeUtils.import("resource://testing-common/BrowserTestUtils.jsm"); var imports = [ "SimpleTest", "is", "isnot", "ok"]; for (var name of imports) { - window[name] = window.opener.wrappedJSObject[name]; + window[name] = window.arguments[0][name]; } const text="MOZILLA"; @@ -38,7 +38,7 @@ history.legacySHistory.PurgeHistory(history.count); window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function onLoad(e) { diff --git a/docshell/test/chrome/bug364461_window.xul b/docshell/test/chrome/bug364461_window.xul index d195c3e2931b..7bbdf4032682 100644 --- a/docshell/test/chrome/bug364461_window.xul +++ b/docshell/test/chrome/bug364461_window.xul @@ -22,10 +22,10 @@ var gExpected = []; function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(a, b, message) { - window.opener.wrappedJSObject.SimpleTest.is(a, b, message); + window.arguments[0].SimpleTest.is(a, b, message); } function finish() { for (let eventType of LISTEN_EVENTS) { @@ -33,7 +33,7 @@ } window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function onLoad() { diff --git a/docshell/test/chrome/bug396519_window.xul b/docshell/test/chrome/bug396519_window.xul index 549b80f25cee..98804ca971fd 100644 --- a/docshell/test/chrome/bug396519_window.xul +++ b/docshell/test/chrome/bug396519_window.xul @@ -23,10 +23,10 @@ var gExpected = []; function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(a, b, message) { - window.opener.wrappedJSObject.SimpleTest.is(a, b, message); + window.arguments[0].SimpleTest.is(a, b, message); } function finish() { for (let eventType of LISTEN_EVENTS) { @@ -34,7 +34,7 @@ } window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function onLoad() { diff --git a/docshell/test/chrome/bug449778_window.xul b/docshell/test/chrome/bug449778_window.xul index b4fc5e2ba227..0404fd5f524d 100644 --- a/docshell/test/chrome/bug449778_window.xul +++ b/docshell/test/chrome/bug449778_window.xul @@ -10,7 +10,7 @@ diff --git a/docshell/test/chrome/test_bug113934.xul b/docshell/test/chrome/test_bug113934.xul index 69aad53d3473..ef1e8864ae23 100644 --- a/docshell/test/chrome/test_bug113934.xul +++ b/docshell/test/chrome/test_bug113934.xul @@ -21,8 +21,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=113934 SimpleTest.waitForExplicitFinish(); addLoadEvent(function() { - window.open("bug113934_window.xul?content", "bug113934", - "chrome,width=800,height=800"); + window.openDialog("bug113934_window.xul?content", "bug113934", + "chrome,width=800,height=800,noopener", window); }); ]]> diff --git a/docshell/test/chrome/test_bug215405.xul b/docshell/test/chrome/test_bug215405.xul index f5763bdf5d69..51e1c9e43e39 100644 --- a/docshell/test/chrome/test_bug215405.xul +++ b/docshell/test/chrome/test_bug215405.xul @@ -28,8 +28,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=215405 /** Test for Bug 215405 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug215405_window.xul", "bug215405", - "chrome,width=600,height=600"); +window.openDialog("bug215405_window.xul", "bug215405", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug293235.xul b/docshell/test/chrome/test_bug293235.xul index 2c54191e2dbc..b1925eeec6c4 100644 --- a/docshell/test/chrome/test_bug293235.xul +++ b/docshell/test/chrome/test_bug293235.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=293235.xul /** Test for Bug 293235 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug293235_window.xul", "bug293235", - "chrome,width=600,height=600"); +window.openDialog("bug293235_window.xul", "bug293235", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug294258.xul b/docshell/test/chrome/test_bug294258.xul index dd820df4b427..e9a95c27c807 100644 --- a/docshell/test/chrome/test_bug294258.xul +++ b/docshell/test/chrome/test_bug294258.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=294258.xul /** Test for Bug 294258 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug294258_window.xul", "bug294258", - "chrome,width=600,height=600"); +window.openDialog("bug294258_window.xul", "bug294258", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug298622.xul b/docshell/test/chrome/test_bug298622.xul index 5d386e8da654..27b3407c48ac 100644 --- a/docshell/test/chrome/test_bug298622.xul +++ b/docshell/test/chrome/test_bug298622.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=298622.xul /** Test for Bug 298622 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug298622_window.xul", "bug298622", - "chrome,width=600,height=600"); +window.openDialog("bug298622_window.xul", "bug298622", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug301397.xul b/docshell/test/chrome/test_bug301397.xul index 71f9f3b261e0..0869ce465a76 100644 --- a/docshell/test/chrome/test_bug301397.xul +++ b/docshell/test/chrome/test_bug301397.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=301397.xul /** Test for Bug 301397 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug301397_window.xul", "bug301397", - "chrome,width=600,height=600"); +window.openDialog("bug301397_window.xul", "bug301397", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug303267.xul b/docshell/test/chrome/test_bug303267.xul index 8bd330e120d5..2e02374d5d1c 100644 --- a/docshell/test/chrome/test_bug303267.xul +++ b/docshell/test/chrome/test_bug303267.xul @@ -30,8 +30,8 @@ SimpleTest.expectAssertions(0, 1); /** Test for Bug 303267 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug303267_window.xul", "bug303267", - "chrome,width=600,height=600"); +window.openDialog("bug303267_window.xul", "bug303267", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug311007.xul b/docshell/test/chrome/test_bug311007.xul index 69a2222e9526..3cb60159fc59 100644 --- a/docshell/test/chrome/test_bug311007.xul +++ b/docshell/test/chrome/test_bug311007.xul @@ -33,8 +33,8 @@ if (navigator.platform.startsWith("Win")) { /** Test for Bug 311007 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug311007_window.xul", "bug311007", - "chrome,width=600,height=600"); +window.openDialog("bug311007_window.xul", "bug311007", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug321671.xul b/docshell/test/chrome/test_bug321671.xul index 00f08032945a..c731d06e8c7b 100644 --- a/docshell/test/chrome/test_bug321671.xul +++ b/docshell/test/chrome/test_bug321671.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=321671.xul /** Test for Bug 321671 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug321671_window.xul", "bug321671", - "chrome,width=600,height=600,scrollbars"); +window.openDialog("bug321671_window.xul", "bug321671", + "chrome,width=600,height=600,scrollbars,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug360511.xul b/docshell/test/chrome/test_bug360511.xul index deeb1bc3cf49..7f25482f3d4f 100644 --- a/docshell/test/chrome/test_bug360511.xul +++ b/docshell/test/chrome/test_bug360511.xul @@ -30,8 +30,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=360511.xul /** Test for Bug 360511 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug360511_window.xul", "bug360511", - "chrome,scrollbars,width=600,height=600"); +window.openDialog("bug360511_window.xul", "bug360511", + "chrome,scrollbars,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug364461.xul b/docshell/test/chrome/test_bug364461.xul index 0aa65089e302..e7a8b4c75bd4 100644 --- a/docshell/test/chrome/test_bug364461.xul +++ b/docshell/test/chrome/test_bug364461.xul @@ -34,8 +34,8 @@ SpecialPowers.pushPrefEnv({ }, runTests); function runTests() { - window.open("bug364461_window.xul", "bug364461", - "chrome,width=600,height=600"); + window.openDialog("bug364461_window.xul", "bug364461", + "chrome,width=600,height=600,noopener", window); } ]]> diff --git a/docshell/test/chrome/test_bug396519.xul b/docshell/test/chrome/test_bug396519.xul index 454d4572ce38..58db0c0ab040 100644 --- a/docshell/test/chrome/test_bug396519.xul +++ b/docshell/test/chrome/test_bug396519.xul @@ -21,8 +21,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=396519 /** Test for Bug 396519 **/ SimpleTest.waitForExplicitFinish(); - window.open("bug396519_window.xul", "bug396519", - "chrome,width=600,height=600"); + window.openDialog("bug396519_window.xul", "bug396519", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug396649.xul b/docshell/test/chrome/test_bug396649.xul index 3554c2f98a57..bc839668e9f5 100644 --- a/docshell/test/chrome/test_bug396649.xul +++ b/docshell/test/chrome/test_bug396649.xul @@ -32,8 +32,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=396649.xul /** Test for Bug 396649 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug396649_window.xul", "bug396649", - "chrome,width=600,height=600,scrollbars"); +window.openDialog("bug396649_window.xul", "bug396649", + "chrome,width=600,height=600,scrollbars,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug449778.xul b/docshell/test/chrome/test_bug449778.xul index 6c377020aeed..ee690cdfbf9c 100644 --- a/docshell/test/chrome/test_bug449778.xul +++ b/docshell/test/chrome/test_bug449778.xul @@ -21,8 +21,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=449778 SimpleTest.waitForExplicitFinish(); addLoadEvent(function() { - window.open("bug449778_window.xul", "bug449778", - "chrome,width=800,height=800"); + window.openDialog("bug449778_window.xul", "bug449778", + "chrome,width=800,height=800,noopener", window); }); ]]> diff --git a/docshell/test/chrome/test_bug449780.xul b/docshell/test/chrome/test_bug449780.xul index 500d51dc2622..4aa4df8d0045 100644 --- a/docshell/test/chrome/test_bug449780.xul +++ b/docshell/test/chrome/test_bug449780.xul @@ -21,8 +21,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=449780 SimpleTest.waitForExplicitFinish(); addLoadEvent(function() { - window.open("bug449780_window.xul", "bug449780", - "chrome,width=800,height=800"); + window.openDialog("bug449780_window.xul", "bug449780", + "chrome,width=800,height=800,noopener", window); }); ]]> diff --git a/docshell/test/chrome/test_bug456980.xul b/docshell/test/chrome/test_bug456980.xul index 91f5c8aa05a5..51bcb6d6a317 100644 --- a/docshell/test/chrome/test_bug456980.xul +++ b/docshell/test/chrome/test_bug456980.xul @@ -21,8 +21,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=456980 SimpleTest.waitForExplicitFinish(); addLoadEvent(function() { - window.open("bug113934_window.xul?chrome", "bug456980", - "chrome,width=800,height=800"); + window.openDialog("bug113934_window.xul?chrome", "bug456980", + "chrome,width=800,height=800,noopener", window); }); ]]> diff --git a/docshell/test/chrome/test_bug582176.xul b/docshell/test/chrome/test_bug582176.xul index 284fd800e052..8927118861b5 100644 --- a/docshell/test/chrome/test_bug582176.xul +++ b/docshell/test/chrome/test_bug582176.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=582176.xul /** Test for Bug 582176 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug582176_window.xul", "bug582176", - "chrome,width=600,height=600"); +window.openDialog("bug582176_window.xul", "bug582176", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug608669.xul b/docshell/test/chrome/test_bug608669.xul index b70a3729a013..d8cde49dbe69 100644 --- a/docshell/test/chrome/test_bug608669.xul +++ b/docshell/test/chrome/test_bug608669.xul @@ -28,6 +28,8 @@ function nextTest() { gen.next(); } +let chromeWindow = docShell.rootTreeItem.domWindow; + function* doTest() { var notificationCount = 0; var observer = { @@ -48,24 +50,26 @@ function* doTest() { is(notificationCount, 0, "initial count"); // create a new window - var testWin = window.open("", "bug 608669", "chrome,width=600,height=600"); + var testWin = chromeWindow.open("", "bug 608669", "chrome,width=600,height=600"); testWin.x = "y"; is(notificationCount, 1, "after created window"); // Try loading in the window testWin.location = "bug608669.xul"; - window.onmessage = nextTest; + chromeWindow.onmessage = nextTest; yield undefined; is(notificationCount, 1, "after first load"); is(testWin.x, "y", "reused window"); // Try loading again in the window testWin.location = "bug608669.xul?x"; - window.onmessage = nextTest; + chromeWindow.onmessage = nextTest; yield undefined; is(notificationCount, 2, "after second load"); is("x" in testWin, false, "didn't reuse window"); + chromeWindow.onmessage = null; + testWin.close(); os.removeObserver(observer, "chrome-document-global-created"); diff --git a/docshell/test/chrome/test_bug662200.xul b/docshell/test/chrome/test_bug662200.xul index 911e883bd646..39166a1d2caf 100644 --- a/docshell/test/chrome/test_bug662200.xul +++ b/docshell/test/chrome/test_bug662200.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=662200.xul /** Test for Bug 662200 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug662200_window.xul", "bug662200", - "chrome,width=600,height=600"); +window.openDialog("bug662200_window.xul", "bug662200", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug690056.xul b/docshell/test/chrome/test_bug690056.xul index 90fdf44a8b17..f4706d5f0910 100644 --- a/docshell/test/chrome/test_bug690056.xul +++ b/docshell/test/chrome/test_bug690056.xul @@ -19,8 +19,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=690056 diff --git a/docshell/test/chrome/test_bug89419.xul b/docshell/test/chrome/test_bug89419.xul index 45503067d0b8..8c7d88c2858a 100644 --- a/docshell/test/chrome/test_bug89419.xul +++ b/docshell/test/chrome/test_bug89419.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=89419.xul /** Test for Bug 89419 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug89419_window.xul", "bug89419", - "chrome,width=600,height=600"); +window.openDialog("bug89419_window.xul", "bug89419", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_bug92598.xul b/docshell/test/chrome/test_bug92598.xul index e5713cc8417a..d98b90981bc0 100644 --- a/docshell/test/chrome/test_bug92598.xul +++ b/docshell/test/chrome/test_bug92598.xul @@ -28,8 +28,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=92598 /** Test for Bug 92598 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug92598_window.xul", "bug92598", - "chrome,width=600,height=600"); +window.openDialog("bug92598_window.xul", "bug92598", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/docshell/test/chrome/test_mozFrameType.xul b/docshell/test/chrome/test_mozFrameType.xul index 98d2f00f4b82..502e166428e3 100644 --- a/docshell/test/chrome/test_mozFrameType.xul +++ b/docshell/test/chrome/test_mozFrameType.xul @@ -32,8 +32,8 @@ if (navigator.platform.startsWith("Win")) { SimpleTest.waitForExplicitFinish(); addLoadEvent(function () { - window.open("mozFrameType_window.xul", "mozFrameType", - "chrome,width=600,height=600"); + window.openDialog("mozFrameType_window.xul", "mozFrameType", + "chrome,width=600,height=600,noopener", window); }); ]]> diff --git a/docshell/test/chrome/test_principalInherit.xul b/docshell/test/chrome/test_principalInherit.xul index 47957b76a3cc..5745d1e062a7 100644 --- a/docshell/test/chrome/test_principalInherit.xul +++ b/docshell/test/chrome/test_principalInherit.xul @@ -61,7 +61,7 @@ var tests = [ // force creation of a content viewer. let xulWinURL = 'data:application/vnd.mozilla.xul+xml,' + ''; - let newWin = window.openDialog(xulWinURL, "chrome_window", "chrome"); + let newWin = docShell.rootTreeItem.domWindow.openDialog(xulWinURL, "chrome_window", "chrome"); loadListener(newWin, function () { let frame = newWin.document.createXULElement("iframe"); frame.setAttribute("type", "content"); diff --git a/dom/base/test/chrome/cpows_parent.xul b/dom/base/test/chrome/cpows_parent.xul index ac18ea3aaecb..038df4dc342e 100644 --- a/dom/base/test/chrome/cpows_parent.xul +++ b/dom/base/test/chrome/cpows_parent.xul @@ -18,19 +18,19 @@ var savedMM = null; function info(message) { - return opener.wrappedJSObject.info(message); + return window.arguments[0].info(message); } function ok(condition, message) { - return opener.wrappedJSObject.ok(condition, message); + return window.arguments[0].ok(condition, message); } function is(v1, v2, message) { - return opener.wrappedJSObject.is(v1, v2, message); + return window.arguments[0].is(v1, v2, message); } function todo_is(v1, v2, message) { - return opener.wrappedJSObject.todo_is(v1, v2, message); + return window.arguments[0].todo_is(v1, v2, message); } // Make sure that an error in this file actually causes the test to fail. @@ -411,7 +411,7 @@ } failed = true; } - opener.wrappedJSObject.SpecialPowers.clearUserPref(PREF_UNSAFE_FORBIDDEN); + window.arguments[0].SpecialPowers.clearUserPref(PREF_UNSAFE_FORBIDDEN); ok(failed, "CPOW should fail when unsafe"); msg.target.messageManager.sendAsyncMessage("cpows:unsafe_done"); } @@ -427,7 +427,7 @@ } ok(false, "cpow failed"); } - opener.wrappedJSObject.SpecialPowers.clearUserPref(PREF_UNSAFE_FORBIDDEN); + window.arguments[0].SpecialPowers.clearUserPref(PREF_UNSAFE_FORBIDDEN); msg.target.messageManager.sendAsyncMessage("cpows:safe_done"); } @@ -512,7 +512,7 @@ function finish() { ok(gReceivedErrorProbe, "Should have reported error probe"); - opener.setTimeout(function() { this.done(); }, 0); + window.arguments[0].setTimeout(function() { this.done(); }, 0); window.close(); } ]]> diff --git a/dom/base/test/chrome/file_bug1139964.xul b/dom/base/test/chrome/file_bug1139964.xul index 7bf75a2caca0..295770f4fa9d 100644 --- a/dom/base/test/chrome/file_bug1139964.xul +++ b/dom/base/test/chrome/file_bug1139964.xul @@ -14,7 +14,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1139964 var ppm = Cc["@mozilla.org/parentprocessmessagemanager;1"].getService(); function ok(cond, msg) { - opener.wrappedJSObject.ok(cond, msg); + window.arguments[0].ok(cond, msg); } var msgName = "TEST:Global_has_Promise"; @@ -44,7 +44,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1139964 ok(m.data.hasTextEncoder, "BrowserChildGlobal should have TextEncoder object in the global scope!"); ok(m.data.hasWindow, "BrowserChildGlobal should have Window object in the global scope!"); - opener.setTimeout(function() { this.done(); }, 0); + window.arguments[0].setTimeout(function() { this.done(); }, 0); window.close(); } diff --git a/dom/base/test/chrome/file_bug1209621.xul b/dom/base/test/chrome/file_bug1209621.xul index 9f6e15198e8f..36f81a13c06b 100644 --- a/dom/base/test/chrome/file_bug1209621.xul +++ b/dom/base/test/chrome/file_bug1209621.xul @@ -12,11 +12,11 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1209621 diff --git a/dom/base/test/chrome/test_bug1209621.xul b/dom/base/test/chrome/test_bug1209621.xul index 4ccbb8c18222..d9456a3aae8a 100644 --- a/dom/base/test/chrome/test_bug1209621.xul +++ b/dom/base/test/chrome/test_bug1209621.xul @@ -26,7 +26,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1209621 } addLoadEvent(function() { - window.open("file_bug1209621.xul", "", "chrome"); + window.openDialog("file_bug1209621.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/base/test/chrome/test_bug549682.xul b/dom/base/test/chrome/test_bug549682.xul index 283811a449b4..87a6818d0f55 100644 --- a/dom/base/test/chrome/test_bug549682.xul +++ b/dom/base/test/chrome/test_bug549682.xul @@ -26,7 +26,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=549682 } addLoadEvent(function() { - window.open("file_bug549682.xul", "", "chrome"); + window.openDialog("file_bug549682.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/base/test/chrome/test_bug616841.xul b/dom/base/test/chrome/test_bug616841.xul index b1a2c17a3de8..5fb96a480f03 100644 --- a/dom/base/test/chrome/test_bug616841.xul +++ b/dom/base/test/chrome/test_bug616841.xul @@ -24,7 +24,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=616841 } addLoadEvent(function() { - window.open("file_bug616841.xul", "", "chrome"); + window.openDialog("file_bug616841.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/base/test/chrome/test_bug814638.xul b/dom/base/test/chrome/test_bug814638.xul index bfcb8f73a72a..b7e02b636899 100644 --- a/dom/base/test/chrome/test_bug814638.xul +++ b/dom/base/test/chrome/test_bug814638.xul @@ -23,8 +23,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=814638 function startTest() { let hostURL = "chrome://mochitests/content/chrome/dom/base/test/chrome/host_bug814638.xul"; - let host1 = window.open(hostURL, "_blank", "chrome"); - let host2 = window.open(hostURL, "_blank", "chrome"); + let host1 = docShell.rootTreeItem.domWindow.open(hostURL, "_blank", "chrome"); + let host2 = docShell.rootTreeItem.domWindow.open(hostURL, "_blank", "chrome"); let isHost1Loaded = isHost2Loaded = false host1.onload = function() { diff --git a/dom/base/test/chrome/test_bug816340.xul b/dom/base/test/chrome/test_bug816340.xul index 2daa98cf337d..15cb5ef74469 100644 --- a/dom/base/test/chrome/test_bug816340.xul +++ b/dom/base/test/chrome/test_bug816340.xul @@ -24,7 +24,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=816340 } addLoadEvent(function() { - window.open("file_bug816340.xul", "", "chrome"); + window.openDialog("file_bug816340.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/base/test/chrome/test_bug990812.xul b/dom/base/test/chrome/test_bug990812.xul index 390da62868db..53aa8390e826 100644 --- a/dom/base/test/chrome/test_bug990812.xul +++ b/dom/base/test/chrome/test_bug990812.xul @@ -31,7 +31,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=990812 if (tests.length > 0) { var file = tests.shift(); info("-- running " + file); - window.open(file, "", "chrome"); + window.openDialog(file, "_blank", "chrome,noopener", window); } else { SimpleTest.finish(); } diff --git a/dom/base/test/chrome/test_chromeOuterWindowID.xul b/dom/base/test/chrome/test_chromeOuterWindowID.xul index 6c0b138a3f3e..e126d38614eb 100644 --- a/dom/base/test/chrome/test_chromeOuterWindowID.xul +++ b/dom/base/test/chrome/test_chromeOuterWindowID.xul @@ -72,7 +72,7 @@ windows. * nonRemote: a reference to the non-remote browser in the window */ async function prepareWindow(num, page) { - let win = window.open(BROWSER_DOC, "bug1474662-" + num, "chrome,width=200,height=200"); + let win = docShell.rootTreeItem.domWindow.open(BROWSER_DOC, "bug1474662-" + num, "chrome,width=200,height=200"); await BrowserTestUtils.waitForEvent(win, "load"); let remote = win.document.getElementById("remote"); let nonRemote = win.document.getElementById("non-remote"); diff --git a/dom/base/test/chrome/test_cpows.xul b/dom/base/test/chrome/test_cpows.xul index 3c31279d4ac9..ff1210db3e96 100644 --- a/dom/base/test/chrome/test_cpows.xul +++ b/dom/base/test/chrome/test_cpows.xul @@ -28,7 +28,7 @@ } addLoadEvent(function() { - window.open("cpows_parent.xul", "", "chrome"); + window.openDialog("cpows_parent.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/base/test/chrome/test_document-element-inserted.xul b/dom/base/test/chrome/test_document-element-inserted.xul index de9a539fe1a0..fa7c38371950 100644 --- a/dom/base/test/chrome/test_document-element-inserted.xul +++ b/dom/base/test/chrome/test_document-element-inserted.xul @@ -37,7 +37,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1411707 // expect both events to fire with the docs in the correct state. async function testEvents() { info(`Waiting for events after loading ${OUTER_URL}`); - let win = window.openDialog(OUTER_URL, null, "chrome,dialog=no,all"); + let win = docShell.rootTreeItem.domWindow.openDialog(OUTER_URL, "_blank", "chrome,dialog=no,all"); await waitForEvent(OUTER_URL); await waitForEvent(INNER_URL); win.close(); diff --git a/dom/base/test/chrome/test_nsITextInputProcessor.xul b/dom/base/test/chrome/test_nsITextInputProcessor.xul index 5fcb247cae23..52772fa63a43 100644 --- a/dom/base/test/chrome/test_nsITextInputProcessor.xul +++ b/dom/base/test/chrome/test_nsITextInputProcessor.xul @@ -21,8 +21,8 @@ diff --git a/dom/base/test/chrome/test_swapFrameLoaders.xul b/dom/base/test/chrome/test_swapFrameLoaders.xul index 077c731aaa92..9394bd29711f 100644 --- a/dom/base/test/chrome/test_swapFrameLoaders.xul +++ b/dom/base/test/chrome/test_swapFrameLoaders.xul @@ -19,7 +19,7 @@ Test swapFrameLoaders with different frame types and remoteness diff --git a/dom/base/test/chrome/test_title.xul b/dom/base/test/chrome/test_title.xul index a0576e75506c..3cdb2b4fa303 100644 --- a/dom/base/test/chrome/test_title.xul +++ b/dom/base/test/chrome/test_title.xul @@ -22,8 +22,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=481777 /** Test for Bug 481777 **/ SimpleTest.waitForExplicitFinish(); - window.open("title_window.xul", "bug481777", - "chrome,width=100,height=100"); + window.openDialog("title_window.xul", "bug481777", + "chrome,width=100,height=100,noopener", window); ]]> diff --git a/dom/base/test/chrome/title_window.xul b/dom/base/test/chrome/title_window.xul index 7d9aa6f315c2..dabdc2f35478 100644 --- a/dom/base/test/chrome/title_window.xul +++ b/dom/base/test/chrome/title_window.xul @@ -22,7 +22,7 @@ { - window[key] = window.opener[key]; + window[key] = window.arguments[0][key]; }) const NS = { diff --git a/dom/base/test/test_bug1016960.html b/dom/base/test/test_bug1016960.html index 31add31a1b09..1c7f9077d240 100644 --- a/dom/base/test/test_bug1016960.html +++ b/dom/base/test/test_bug1016960.html @@ -12,8 +12,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1016960 /** Test for Bug 1016960 **/ - var chromeWindow = window.open("chrome://mochitests/content/chrome/dom/base/test/file_empty.html", "1016960", "chrome"); - ok(chromeWindow.isChromeWindow, "A chrome window should return true for |instanceof ChromeWindow|."); + var chromeWindow = docShell.rootTreeItem.domWindow.open("chrome://mochitests/content/chrome/dom/base/test/file_empty.html", "1016960", "chrome"); + ok(chromeWindow.isChromeWindow, "A chrome window should return true for .isChromeWindow."); chromeWindow.close(); diff --git a/dom/canvas/test/chrome/test_drawWindow_widget_layers.html b/dom/canvas/test/chrome/test_drawWindow_widget_layers.html index 151c08ff1be6..74ab79a8d537 100644 --- a/dom/canvas/test/chrome/test_drawWindow_widget_layers.html +++ b/dom/canvas/test/chrome/test_drawWindow_widget_layers.html @@ -29,8 +29,8 @@ // Need to open as a toplevel chrome window so that // DRAWWINDOW_USE_WIDGET_LAYERS is honored. - sourceWindow = window.open("file_drawWindow_source.html", "", - `chrome,width=${WINDOW_INNER_WIDTH},height=${WINDOW_INNER_HEIGHT}`); + sourceWindow = docShell.rootTreeItem.domWindow.open("file_drawWindow_source.html", "", + `chrome,width=${WINDOW_INNER_WIDTH},height=${WINDOW_INNER_HEIGHT}`); SimpleTest.waitForFocus(runTests, sourceWindow); } diff --git a/dom/events/test/test_bug1412775.xul b/dom/events/test/test_bug1412775.xul index 245bcde87ce4..f06e902fcc9e 100644 --- a/dom/events/test/test_bug1412775.xul +++ b/dom/events/test/test_bug1412775.xul @@ -18,7 +18,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1412775 var win; function init() { SimpleTest.waitForExplicitFinish(); - win = window.open("window_bug1412775.xul", "_new", "chrome"); + win = docShell.rootTreeItem.domWindow.open("window_bug1412775.xul", "_new", "chrome"); win.onload = function() { var b = win.document.getElementById("browser"); var d = b.contentWindow.document; diff --git a/dom/events/test/test_bug617528.xul b/dom/events/test/test_bug617528.xul index 71c1c2f4adf6..ff38599268e2 100644 --- a/dom/events/test/test_bug617528.xul +++ b/dom/events/test/test_bug617528.xul @@ -21,7 +21,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=617528 var browser; function start() { - _window = window.open("window_bug617528.xul", "_new", "chrome"); + _window = docShell.rootTreeItem.domWindow.open("window_bug617528.xul", "_new", "chrome"); _window.addEventListener("load", onLoad, false); } diff --git a/dom/ipc/tests/process_error.xul b/dom/ipc/tests/process_error.xul index df690e17ecb3..a074f33b6def 100644 --- a/dom/ipc/tests/process_error.xul +++ b/dom/ipc/tests/process_error.xul @@ -9,10 +9,10 @@ const {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm"); const {BrowserTestUtils} = ChromeUtils.import("resource://testing-common/BrowserTestUtils.jsm"); - const ok = window.opener.wrappedJSObject.ok; - const is = window.opener.wrappedJSObject.is; - const done = window.opener.wrappedJSObject.done; - const SimpleTest = window.opener.wrappedJSObject.SimpleTest; + const ok = window.arguments[0].ok; + const is = window.arguments[0].is; + const done = window.arguments[0].done; + const SimpleTest = window.arguments[0].SimpleTest; // Allow the browser to get connected before using the messageManager to cause // a crash: diff --git a/dom/ipc/tests/test_process_error.xul b/dom/ipc/tests/test_process_error.xul index d94843d274fe..19d6b431a08e 100644 --- a/dom/ipc/tests/test_process_error.xul +++ b/dom/ipc/tests/test_process_error.xul @@ -9,7 +9,7 @@ SimpleTest.waitForExplicitFinish(); SimpleTest.expectChildProcessCrash(); - var w = window.open('process_error.xul', '_blank', 'chrome,resizable=yes,width=400,height=600'); + var w = docShell.rootTreeItem.domWindow.openDialog('process_error.xul', '_blank', 'chrome,resizable=yes,width=400,height=600', window); function done() { diff --git a/dom/messagechannel/tests/mm_messageChannelParent.js b/dom/messagechannel/tests/mm_messageChannelParent.js index 2dc7ae7e01d4..e63bece9fce9 100644 --- a/dom/messagechannel/tests/mm_messageChannelParent.js +++ b/dom/messagechannel/tests/mm_messageChannelParent.js @@ -2,23 +2,23 @@ let port; let mm; function info(message) { - return opener.wrappedJSObject.info(message); + return window.arguments[0].info(message); } function ok(condition, message) { - return opener.wrappedJSObject.ok(condition, message); + return window.arguments[0].ok(condition, message); } function is(v1, v2, message) { - return opener.wrappedJSObject.is(v1, v2, message); + return window.arguments[0].is(v1, v2, message); } function todo_is(v1, v2, message) { - return opener.wrappedJSObject.todo_is(v1, v2, message); + return window.arguments[0].todo_is(v1, v2, message); } function cleanUp() { - opener.setTimeout(function() { + window.arguments[0].setTimeout(function() { this.done(); }, 0); window.close(); diff --git a/dom/messagechannel/tests/test_messageChannelWithMessageManager.xul b/dom/messagechannel/tests/test_messageChannelWithMessageManager.xul index add4d6c3d6fc..78dc606e6368 100644 --- a/dom/messagechannel/tests/test_messageChannelWithMessageManager.xul +++ b/dom/messagechannel/tests/test_messageChannelWithMessageManager.xul @@ -21,7 +21,7 @@ } addLoadEvent(function() { - window.open("mm_messageChannelParent.xul", "", "chrome"); + window.openDialog("mm_messageChannelParent.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/messagechannel/tests/test_messageChannelWithMessageManagerNotRemote.xul b/dom/messagechannel/tests/test_messageChannelWithMessageManagerNotRemote.xul index 9ab396e048cc..34fa09dc7a64 100644 --- a/dom/messagechannel/tests/test_messageChannelWithMessageManagerNotRemote.xul +++ b/dom/messagechannel/tests/test_messageChannelWithMessageManagerNotRemote.xul @@ -21,7 +21,7 @@ } addLoadEvent(function() { - window.open("mm_messageChannelParentNotRemote.xul", "", "chrome"); + window.openDialog("mm_messageChannelParentNotRemote.xul", "", "chrome,noopener", window); }); ]]> diff --git a/dom/plugins/test/mochitest/test_xulbrowser_plugin_visibility.xul b/dom/plugins/test/mochitest/test_xulbrowser_plugin_visibility.xul index f0cd783b2d4e..c9d849159083 100644 --- a/dom/plugins/test/mochitest/test_xulbrowser_plugin_visibility.xul +++ b/dom/plugins/test/mochitest/test_xulbrowser_plugin_visibility.xul @@ -10,7 +10,7 @@ SimpleTest.waitForExplicitFinish(); setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED); - var w = window.open('xulbrowser_plugin_visibility.xul', '_blank', 'chrome,resizable=yes,width=400,height=600'); + var w = docShell.rootTreeItem.domWindow.openDialog('xulbrowser_plugin_visibility.xul', '_blank', 'chrome,resizable=yes,width=400,height=600', window); function done() { diff --git a/dom/plugins/test/mochitest/xulbrowser_plugin_visibility.xul b/dom/plugins/test/mochitest/xulbrowser_plugin_visibility.xul index d1199dc6090e..621b7f081047 100644 --- a/dom/plugins/test/mochitest/xulbrowser_plugin_visibility.xul +++ b/dom/plugins/test/mochitest/xulbrowser_plugin_visibility.xul @@ -17,10 +17,10 @@ diff --git a/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xul b/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xul index dbaac3673b7d..62e9d097d064 100644 --- a/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xul +++ b/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xul @@ -24,7 +24,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1224790 function nonModalClosed() { window.close(); - opener.wrappedJSObject.modalClosed(); + window.arguments[0].modalClosed(); } SimpleTest.waitForFocus(runTests); diff --git a/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xul b/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xul index 29685afb731f..1fc4ec874d4e 100644 --- a/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xul +++ b/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xul @@ -26,7 +26,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1224790 function nonModalOpened() { window.close(); - nonModal.wrappedJSObject.modalClosed(opener); + nonModal.modalClosed(window.arguments[0]); } SimpleTest.waitForFocus(runTests); diff --git a/dom/tests/mochitest/chrome/file_bug799299.xul b/dom/tests/mochitest/chrome/file_bug799299.xul index 522743b9c848..a0ef08e0a364 100644 --- a/dom/tests/mochitest/chrome/file_bug799299.xul +++ b/dom/tests/mochitest/chrome/file_bug799299.xul @@ -30,29 +30,29 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=799299 var b1 = document.getElementById("b1"); var b2 = document.getElementById("b2"); b1.contentWindow.focus(); - opener.wrappedJSObject.is(document.activeElement, b1, - "Focused first iframe"); + window.arguments[0].is(document.activeElement, b1, + "Focused first iframe"); var didCallDummy = false; b2.contentWindow.addEventListener("mousedown", function(e) { didCallDummy = true; }); sendClick(b2.contentWindow); - opener.wrappedJSObject.ok(didCallDummy, "dummy mousedown handler should fire"); - opener.wrappedJSObject.is(document.activeElement, b2, - "Focus shifted to second iframe"); + window.arguments[0].ok(didCallDummy, "dummy mousedown handler should fire"); + window.arguments[0].is(document.activeElement, b2, + "Focus shifted to second iframe"); b1.contentWindow.focus(); - opener.wrappedJSObject.is(document.activeElement, b1, - "Re-focused first iframe for the first time"); + window.arguments[0].is(document.activeElement, b1, + "Re-focused first iframe for the first time"); var didCallListener = false; b2.contentWindow.addEventListener("mousedown", function(e) { didCallListener = true; e.preventDefault(); }); sendClick(b2.contentWindow); - opener.wrappedJSObject.ok(didCallListener, "mousedown handler should fire"); - opener.wrappedJSObject.is(document.activeElement, b2, - "focus should move to the second iframe"); + window.arguments[0].ok(didCallListener, "mousedown handler should fire"); + window.arguments[0].is(document.activeElement, b2, + "focus should move to the second iframe"); window.close(); - opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } SimpleTest.waitForFocus(runTests); diff --git a/dom/tests/mochitest/chrome/file_bug800817.xul b/dom/tests/mochitest/chrome/file_bug800817.xul index bdfc9eef43c9..bcd64b3ca7fe 100644 --- a/dom/tests/mochitest/chrome/file_bug800817.xul +++ b/dom/tests/mochitest/chrome/file_bug800817.xul @@ -30,41 +30,41 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=800817 var b1 = document.getElementById("b1"); var b2 = document.getElementById("b2"); - var testMozBrowser = opener.wrappedJSObject.testMozBrowser; + var testMozBrowser = window.arguments[0].testMozBrowser; if (testMozBrowser) { b1.setAttribute("mozbrowser", "true"); b2.setAttribute("mozbrowser", "true"); } if (testMozBrowser) - opener.wrappedJSObject.info("Testing with mozbrowser=true"); + window.arguments[0].info("Testing with mozbrowser=true"); else - opener.wrappedJSObject.info("Testing without mozbrowser"); + window.arguments[0].info("Testing without mozbrowser"); b1.contentWindow.focus(); - opener.wrappedJSObject.is(document.activeElement, b1, - "Focused first iframe"); + window.arguments[0].is(document.activeElement, b1, + "Focused first iframe"); var didCallDummy = false; b2.contentWindow.addEventListener("mousedown", function(e) { didCallDummy = true; }); sendClick(b2.contentWindow); - opener.wrappedJSObject.ok(didCallDummy, "dummy mousedown handler should fire"); - opener.wrappedJSObject.is(document.activeElement, b2, - "Focus shifted to second iframe"); + window.arguments[0].ok(didCallDummy, "dummy mousedown handler should fire"); + window.arguments[0].is(document.activeElement, b2, + "Focus shifted to second iframe"); b1.contentWindow.focus(); - opener.wrappedJSObject.is(document.activeElement, b1, - "Re-focused first iframe for the first time"); + window.arguments[0].is(document.activeElement, b1, + "Re-focused first iframe for the first time"); var didCallListener = false; b2.contentWindow.addEventListener("mousedown", function(e) { didCallListener = true; e.preventDefault(); }); sendClick(b2.contentWindow); - opener.wrappedJSObject.ok(didCallListener, "mousedown handler should fire"); - opener.wrappedJSObject.is(document.activeElement, b1, - "Did not move focus to the second iframe"); + window.arguments[0].ok(didCallListener, "mousedown handler should fire"); + window.arguments[0].is(document.activeElement, b1, + "Did not move focus to the second iframe"); window.close(); - opener.wrappedJSObject.finishedTests(); + window.arguments[0].finishedTests(); } SimpleTest.waitForFocus(runTests); diff --git a/dom/tests/mochitest/chrome/file_bug830858.xul b/dom/tests/mochitest/chrome/file_bug830858.xul index 9d1798dd74ae..1865f52ac30c 100644 --- a/dom/tests/mochitest/chrome/file_bug830858.xul +++ b/dom/tests/mochitest/chrome/file_bug830858.xul @@ -34,27 +34,27 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=830858 b.addEventListener("foo", function() { ++iframeListenerCalled; }, true); doc.dispatchEvent(new Event("foo")); - opener.wrappedJSObject.is(docListenerCalled, 1, "Normal dispatch to Document"); - opener.wrappedJSObject.is(winListenerCalled, 1, "Normal dispatch to Document"); - opener.wrappedJSObject.is(iframeListenerCalled, 1, "Normal dispatch to Document"); + window.arguments[0].is(docListenerCalled, 1, "Normal dispatch to Document"); + window.arguments[0].is(winListenerCalled, 1, "Normal dispatch to Document"); + window.arguments[0].is(iframeListenerCalled, 1, "Normal dispatch to Document"); win.dispatchEvent(new Event("foo")); - opener.wrappedJSObject.is(docListenerCalled, 1, "Normal dispatch to Window"); - opener.wrappedJSObject.is(winListenerCalled, 2, "Normal dispatch to Window"); - opener.wrappedJSObject.is(iframeListenerCalled, 2, "Normal dispatch to Window"); + window.arguments[0].is(docListenerCalled, 1, "Normal dispatch to Window"); + window.arguments[0].is(winListenerCalled, 2, "Normal dispatch to Window"); + window.arguments[0].is(iframeListenerCalled, 2, "Normal dispatch to Window"); wu.dispatchEventToChromeOnly(doc, new Event("foo")); - opener.wrappedJSObject.is(docListenerCalled, 1, "Chrome-only dispatch to Document"); - opener.wrappedJSObject.is(winListenerCalled, 2, "Chrome-only dispatch to Document"); - opener.wrappedJSObject.is(iframeListenerCalled, 3, "Chrome-only dispatch to Document"); + window.arguments[0].is(docListenerCalled, 1, "Chrome-only dispatch to Document"); + window.arguments[0].is(winListenerCalled, 2, "Chrome-only dispatch to Document"); + window.arguments[0].is(iframeListenerCalled, 3, "Chrome-only dispatch to Document"); wu.dispatchEventToChromeOnly(win, new Event("foo")); - opener.wrappedJSObject.is(docListenerCalled, 1, "Chrome-only dispatch to Window"); - opener.wrappedJSObject.is(winListenerCalled, 2, "Chrome-only dispatch to Window"); - opener.wrappedJSObject.is(iframeListenerCalled, 4, "Chrome-only dispatch to Window"); + window.arguments[0].is(docListenerCalled, 1, "Chrome-only dispatch to Window"); + window.arguments[0].is(winListenerCalled, 2, "Chrome-only dispatch to Window"); + window.arguments[0].is(iframeListenerCalled, 4, "Chrome-only dispatch to Window"); window.close(); - opener.wrappedJSObject.finishedTests(); + window.arguments[0].finishedTests(); } SimpleTest.waitForFocus(runTests); diff --git a/dom/tests/mochitest/chrome/file_clipboard_events_chrome.html b/dom/tests/mochitest/chrome/file_clipboard_events_chrome.html index b36c3e78d467..652d1e981f77 100644 --- a/dom/tests/mochitest/chrome/file_clipboard_events_chrome.html +++ b/dom/tests/mochitest/chrome/file_clipboard_events_chrome.html @@ -1 +1 @@ - + diff --git a/dom/tests/mochitest/chrome/fullscreen.xul b/dom/tests/mochitest/chrome/fullscreen.xul index faaafec94c73..2cc95642b622 100644 --- a/dom/tests/mochitest/chrome/fullscreen.xul +++ b/dom/tests/mochitest/chrome/fullscreen.xul @@ -13,7 +13,7 @@ window.addEventListener("fullscreen", onFullScreen, true); function onFullScreen(event) { - window.opener.wrappedJSObject.done(window.fullScreen); + window.arguments[0].done(window.fullScreen); } diff --git a/dom/tests/mochitest/chrome/sizemode_attribute.xul b/dom/tests/mochitest/chrome/sizemode_attribute.xul index a6d983aa6383..3dbde68064e3 100644 --- a/dom/tests/mochitest/chrome/sizemode_attribute.xul +++ b/dom/tests/mochitest/chrome/sizemode_attribute.xul @@ -46,7 +46,7 @@ let tests = [ }, function test8() { - window.opener.wrappedJSObject.done(); + window.arguments[0].done(); } ]; @@ -77,7 +77,7 @@ function checkAndContinue(sizemode) { }, 0); } -let is = window.opener.wrappedJSObject.is; +let is = window.arguments[0].is; diff --git a/dom/tests/mochitest/chrome/test_DOMWindowCreated.xul b/dom/tests/mochitest/chrome/test_DOMWindowCreated.xul index 2b74cde11791..daafed8b93c3 100644 --- a/dom/tests/mochitest/chrome/test_DOMWindowCreated.xul +++ b/dom/tests/mochitest/chrome/test_DOMWindowCreated.xul @@ -23,7 +23,7 @@ diff --git a/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xul b/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xul index cae7ecabb858..98fa31f0ca02 100644 --- a/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xul +++ b/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xul @@ -22,7 +22,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=824917 /** Test for Bug 824917 **/ function runTests() { - window.open("file_DOM_element_instanceof.xul", "_blank", "chrome,width=600,height=550"); + window.openDialog("file_DOM_element_instanceof.xul", "_blank", "chrome,width=600,height=550,noopener", window); } addLoadEvent(runTests); diff --git a/dom/tests/mochitest/chrome/test_MozDomFullscreen_event.xul b/dom/tests/mochitest/chrome/test_MozDomFullscreen_event.xul index 62cf8190ebf0..f633c5a85877 100644 --- a/dom/tests/mochitest/chrome/test_MozDomFullscreen_event.xul +++ b/dom/tests/mochitest/chrome/test_MozDomFullscreen_event.xul @@ -38,7 +38,8 @@ SpecialPowers.pushPrefEnv({"set": [ ]}, setup); function setup() { - newwindow = window.open("MozDomFullscreen_chrome.xul", "_blank","chrome,resizable=yes,width=400,height=400"); + newwindow = docShell.rootTreeItem.domWindow.openDialog( + "MozDomFullscreen_chrome.xul", "_blank","chrome,dialog=no,resizable=yes,width=400,height=400", window); } function done() diff --git a/dom/tests/mochitest/chrome/test_activation.xul b/dom/tests/mochitest/chrome/test_activation.xul index ff18090363d6..404a490b1999 100644 --- a/dom/tests/mochitest/chrome/test_activation.xul +++ b/dom/tests/mochitest/chrome/test_activation.xul @@ -26,7 +26,7 @@ diff --git a/dom/tests/mochitest/chrome/test_focus_docnav.xul b/dom/tests/mochitest/chrome/test_focus_docnav.xul index ed5f9f630dc9..a426b8dbf266 100644 --- a/dom/tests/mochitest/chrome/test_focus_docnav.xul +++ b/dom/tests/mochitest/chrome/test_focus_docnav.xul @@ -11,7 +11,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_focus_docnav.xul", "_blank", "chrome,width=600,height=550"); + window.openDialog("window_focus_docnav.xul", "_blank", "chrome,width=600,height=550,noopener", window); } diff --git a/dom/tests/mochitest/chrome/test_fullscreen.xul b/dom/tests/mochitest/chrome/test_fullscreen.xul index a7a0904f8d96..2946db38208a 100644 --- a/dom/tests/mochitest/chrome/test_fullscreen.xul +++ b/dom/tests/mochitest/chrome/test_fullscreen.xul @@ -13,7 +13,7 @@ diff --git a/dom/xul/test/test_bug757137.xul b/dom/xul/test/test_bug757137.xul index 510e36415736..7096d8c96050 100644 --- a/dom/xul/test/test_bug757137.xul +++ b/dom/xul/test/test_bug757137.xul @@ -20,7 +20,7 @@ SimpleTest.waitForExplicitFinish(); SpecialPowers.pushPrefEnv({"set":[["dom.ipc.tabs.disabled", true]]}, startTest); function startTest() { - var otherWindow = window.open("window_bug757137.xul", "", "chrome"); + var otherWindow = docShell.rootTreeItem.domWindow.open("window_bug757137.xul", "", "chrome"); ok(otherWindow.isChromeWindow, 'XUL window should be a ChromeWindow'); otherWindow.onload = function () { diff --git a/js/xpconnect/tests/chrome/bug503926.xul b/js/xpconnect/tests/chrome/bug503926.xul index 8e4989a77e2a..e3861d7a3e97 100644 --- a/js/xpconnect/tests/chrome/bug503926.xul +++ b/js/xpconnect/tests/chrome/bug503926.xul @@ -20,7 +20,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=503926 var obj = { QueryInterface: function() { passed = true; } } gWindowUtils.xpconnectArgument(obj); var isDialog = location.hash != '#iframe'; - var outer = XPCNativeWrapper.unwrap(isDialog ? opener : parent); + var outer = XPCNativeWrapper.unwrap(isDialog ? window.arguments[0] : parent); outer.ok(passed, "chrome/chrome test passed: " + (isDialog ? "dialog" : "iframe")); if (isDialog) close(); diff --git a/js/xpconnect/tests/chrome/file_bug618176.xul b/js/xpconnect/tests/chrome/file_bug618176.xul index f35d4367f030..03069592c733 100644 --- a/js/xpconnect/tests/chrome/file_bug618176.xul +++ b/js/xpconnect/tests/chrome/file_bug618176.xul @@ -21,7 +21,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=618176 function recvTest(m) { var a = m.json; - opener.wrappedJSObject.is(a.length, 3, "array was serialized and deserialized"); + window.arguments[0].is(a.length, 3, "array was serialized and deserialized"); messageManager.removeMessageListener("test", recvTest); finish(); @@ -38,7 +38,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=618176 } function finish() { - opener.setTimeout(function() { this.done(); }, 0); + window.arguments[0].setTimeout(function() { this.done(); }, 0); window.close(); } diff --git a/js/xpconnect/tests/chrome/test_bug1124898.html b/js/xpconnect/tests/chrome/test_bug1124898.html index 0983a865a228..8389105189f5 100644 --- a/js/xpconnect/tests/chrome/test_bug1124898.html +++ b/js/xpconnect/tests/chrome/test_bug1124898.html @@ -18,7 +18,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1124898 SimpleTest.expectAssertions(0, 1); // Dumb unrelated widget assertion - see bug 1126023. - var w = window.open("about:blank", "w", "chrome"); + var w = docShell.rootTreeItem.domWindow.open("about:blank", "w", "chrome"); is(w.eval('typeof getAttention'), 'function', 'getAttention exists on regular chrome window'); is(w.eval('typeof messageManager'), 'object', 'messageManager exists on regular chrome window'); var contentURL = "http://example.org/tests/js/xpconnect/tests/mochitest/file_empty.html"; diff --git a/js/xpconnect/tests/chrome/test_bug503926.xul b/js/xpconnect/tests/chrome/test_bug503926.xul index 93a25bba99d3..3a198e010521 100644 --- a/js/xpconnect/tests/chrome/test_bug503926.xul +++ b/js/xpconnect/tests/chrome/test_bug503926.xul @@ -47,7 +47,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=503926 ok(!contentWin.passed, "untrusted QI should not be called"); // Try with a dialog. - openDialog("bug503926.xul", "chromeDialog", "modal"); + docShell.rootTreeItem.domWindow.openDialog("bug503926.xul", "chromeDialog", "modal", window); SimpleTest.finish(); } diff --git a/js/xpconnect/tests/chrome/test_bug618176.xul b/js/xpconnect/tests/chrome/test_bug618176.xul index 3dd20d948ad4..d1b492f41b65 100644 --- a/js/xpconnect/tests/chrome/test_bug618176.xul +++ b/js/xpconnect/tests/chrome/test_bug618176.xul @@ -24,7 +24,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=618176 } addLoadEvent(function() { - window.open("file_bug618176.xul", "", "chrome"); + window.openDialog("file_bug618176.xul", "", "chrome,noopener", window); }); ]]> diff --git a/layout/base/tests/chrome/bug1041200_window.html b/layout/base/tests/chrome/bug1041200_window.html index 93f1eaa4895f..4c79ad977aba 100644 --- a/layout/base/tests/chrome/bug1041200_window.html +++ b/layout/base/tests/chrome/bug1041200_window.html @@ -9,12 +9,12 @@ diff --git a/layout/base/tests/chrome/printpreview_bug396024_helper.xul b/layout/base/tests/chrome/printpreview_bug396024_helper.xul index 6d0d27a18546..dbce768cd9b1 100644 --- a/layout/base/tests/chrome/printpreview_bug396024_helper.xul +++ b/layout/base/tests/chrome/printpreview_bug396024_helper.xul @@ -15,10 +15,10 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=396024 // attributes isolate the frames into their own BrowsingContext hierarchies. let frameElts = document.getElementsByTagName("iframe"); -var is = window.opener.wrappedJSObject.is; -var ok = window.opener.wrappedJSObject.ok; -var todo = window.opener.wrappedJSObject.todo; -var SimpleTest = window.opener.wrappedJSObject.SimpleTest; +var is = window.arguments[0].is; +var ok = window.arguments[0].ok; +var todo = window.arguments[0].todo; +var SimpleTest = window.arguments[0].SimpleTest; var gWbp; function printpreview() { gWbp = frameElts[1].contentWindow.docShell.initOrReusePrintPreviewViewer(); diff --git a/layout/base/tests/chrome/printpreview_bug482976_helper.xul b/layout/base/tests/chrome/printpreview_bug482976_helper.xul index b7742fe4e49a..369e0daa545e 100644 --- a/layout/base/tests/chrome/printpreview_bug482976_helper.xul +++ b/layout/base/tests/chrome/printpreview_bug482976_helper.xul @@ -15,10 +15,10 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=482976 // attributes isolate the frames into their own BrowsingContext hierarchies. let frameElts = document.getElementsByTagName("iframe"); -var is = window.opener.wrappedJSObject.is; -var ok = window.opener.wrappedJSObject.ok; -var todo = window.opener.wrappedJSObject.todo; -var SimpleTest = window.opener.wrappedJSObject.SimpleTest; +var is = window.arguments[0].is; +var ok = window.arguments[0].ok; +var todo = window.arguments[0].todo; +var SimpleTest = window.arguments[0].SimpleTest; var gWbp; function printpreview() { gWbp = frameElts[1].contentWindow.docShell.initOrReusePrintPreviewViewer(); diff --git a/layout/base/tests/chrome/printpreview_helper.xul b/layout/base/tests/chrome/printpreview_helper.xul index 51cbb5f5936e..cc43a9fb3bcc 100644 --- a/layout/base/tests/chrome/printpreview_helper.xul +++ b/layout/base/tests/chrome/printpreview_helper.xul @@ -12,11 +12,11 @@ // attributes isolate the frames into their own BrowsingContext hierarchies. let frameElts = document.getElementsByTagName("iframe"); -var is = window.opener.wrappedJSObject.is; -var isnot = window.opener.wrappedJSObject.isnot; -var ok = window.opener.wrappedJSObject.ok; -var todo = window.opener.wrappedJSObject.todo; -var SimpleTest = window.opener.wrappedJSObject.SimpleTest; +var is = window.arguments[0].is; +var isnot = window.arguments[0].isnot; +var ok = window.arguments[0].ok; +var todo = window.arguments[0].todo; +var SimpleTest = window.arguments[0].SimpleTest; var gWbp; var ctx1; var ctx2; diff --git a/layout/base/tests/chrome/test_bug1018265.xul b/layout/base/tests/chrome/test_bug1018265.xul index 20323123ff45..0fd7ed8dbe84 100644 --- a/layout/base/tests/chrome/test_bug1018265.xul +++ b/layout/base/tests/chrome/test_bug1018265.xul @@ -19,7 +19,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1018265 SimpleTest.waitForExplicitFinish(); function run() { - window.open("file_bug1018265.xul", "contentViewerTest", "chrome,width=100,height=100"); + window.openDialog("file_bug1018265.xul", "contentViewerTest", "chrome,width=100,height=100,noopener", window); } function done() { diff --git a/layout/base/tests/chrome/test_bug1041200.xul b/layout/base/tests/chrome/test_bug1041200.xul index d136acc94aa5..365ecf2825c8 100644 --- a/layout/base/tests/chrome/test_bug1041200.xul +++ b/layout/base/tests/chrome/test_bug1041200.xul @@ -15,8 +15,8 @@ SimpleTest.waitForExplicitFinish(); // Run the test in a separate window so that the test runs as a chrome // window - window.open("bug1041200_window.html", "bug1041200", - "chrome,width=800,height=800"); + window.openDialog("bug1041200_window.html", "bug1041200", + "chrome,width=800,height=800,noopener", window); ]]> diff --git a/layout/base/tests/chrome/test_bug458898.html b/layout/base/tests/chrome/test_bug458898.html index cfb57bc1e025..b9806861ee33 100644 --- a/layout/base/tests/chrome/test_bug458898.html +++ b/layout/base/tests/chrome/test_bug458898.html @@ -18,7 +18,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=458898 diff --git a/layout/base/tests/chrome/test_chrome_over_plugin.xul b/layout/base/tests/chrome/test_chrome_over_plugin.xul index 9d352bdfacad..c6fdbc443961 100644 --- a/layout/base/tests/chrome/test_chrome_over_plugin.xul +++ b/layout/base/tests/chrome/test_chrome_over_plugin.xul @@ -17,8 +17,8 @@ // Run the test in a separate window so that the test runs as a chrome // window SpecialPowers.setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED); - var w = window.open("chrome_over_plugin_window.xul", "chrome_over_plugin", - "chrome,width=200,height=300"); + var w = window.openDialog("chrome_over_plugin_window.xul", "chrome_over_plugin", + "chrome,width=200,height=300,noopener", window); ]]> diff --git a/layout/base/tests/chrome/test_css_visibility_propagation.xul b/layout/base/tests/chrome/test_css_visibility_propagation.xul index dfcd89ec86ef..bfe36041326f 100644 --- a/layout/base/tests/chrome/test_css_visibility_propagation.xul +++ b/layout/base/tests/chrome/test_css_visibility_propagation.xul @@ -12,12 +12,12 @@ const baseURL = "chrome://mochitests/content/chrome/layout/base/tests/chrome/"; // Tests that iframe visibility is updated when it's swapped. add_task(async () => { // Open two new windows to swap iframes. - const window1 = - window.open(baseURL + "window_css_visibility_propagation-1.html", - "_blank", "chrome"); - const window2 = - window.open(baseURL + "window_css_visibility_propagation-2.html", - "_blank", "chrome"); + const window1 = docShell.rootTreeItem.domWindow.open( + baseURL + "window_css_visibility_propagation-1.html", + "_blank", "chrome"); + const window2 = docShell.rootTreeItem.domWindow.open( + baseURL + "window_css_visibility_propagation-2.html", + "_blank", "chrome"); const loadWindow1 = new Promise(resolve => window1.addEventListener("load", resolve)); diff --git a/layout/base/tests/chrome/test_default_background.xul b/layout/base/tests/chrome/test_default_background.xul index 4d690fd79fbf..8d7e96fc3a1b 100644 --- a/layout/base/tests/chrome/test_default_background.xul +++ b/layout/base/tests/chrome/test_default_background.xul @@ -15,8 +15,8 @@ SimpleTest.waitForExplicitFinish(); // Run the test in a separate window so that the test runs as a chrome // window - window.open("default_background_window.xul", "default_background", - "chrome,width=200,height=300"); + window.openDialog("default_background_window.xul", "default_background", + "chrome,width=200,height=300,noopener", window); ]]> diff --git a/layout/base/tests/chrome/test_dialog_with_positioning.html b/layout/base/tests/chrome/test_dialog_with_positioning.html index 7b279411d299..66c0e3309c29 100644 --- a/layout/base/tests/chrome/test_dialog_with_positioning.html +++ b/layout/base/tests/chrome/test_dialog_with_positioning.html @@ -13,7 +13,7 @@ SimpleTest.waitForExplicitFinish(); var root = getRootDirectory(window.location.href); window.openDialog(root + "dialog_with_positioning_window.xul", "dialog_with_positioning", - "dialog,chrome"); + "dialog,chrome,noopener", window); diff --git a/layout/base/tests/chrome/test_printpreview.xul b/layout/base/tests/chrome/test_printpreview.xul index 00f34e2401c4..2f8411660a24 100644 --- a/layout/base/tests/chrome/test_printpreview.xul +++ b/layout/base/tests/chrome/test_printpreview.xul @@ -10,6 +10,6 @@ diff --git a/layout/base/tests/chrome/test_printpreview_bug396024.xul b/layout/base/tests/chrome/test_printpreview_bug396024.xul index 518995ca9631..b70bbe773b51 100644 --- a/layout/base/tests/chrome/test_printpreview_bug396024.xul +++ b/layout/base/tests/chrome/test_printpreview_bug396024.xul @@ -16,6 +16,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=396024 diff --git a/layout/base/tests/chrome/test_printpreview_bug482976.xul b/layout/base/tests/chrome/test_printpreview_bug482976.xul index 06b8cb19d645..7a25a2141ffd 100644 --- a/layout/base/tests/chrome/test_printpreview_bug482976.xul +++ b/layout/base/tests/chrome/test_printpreview_bug482976.xul @@ -16,6 +16,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=482976 diff --git a/layout/forms/test/bug665540_window.xul b/layout/forms/test/bug665540_window.xul index f0225ef9363b..d0dc3fdb878c 100644 --- a/layout/forms/test/bug665540_window.xul +++ b/layout/forms/test/bug665540_window.xul @@ -6,7 +6,7 @@ sizemode="fullscreen"> diff --git a/layout/forms/test/test_bug665540.html b/layout/forms/test/test_bug665540.html index 8495bc12e2fa..46147a15167f 100644 --- a/layout/forms/test/test_bug665540.html +++ b/layout/forms/test/test_bug665540.html @@ -31,7 +31,8 @@ var eventOffsetX = 2; var eventOffsetY = 2; function openFullscreenWindow() { - win = open("bug665540_window.xul", "_blank", "resizable=yes,chrome"); + win = window.docShell.rootTreeItem.domWindow + .openDialog("bug665540_window.xul", "_blank", "resizable=yes,chrome", window); win.addEventListener("sizemodechange", function() { info("sizemodechange. windowState = " + win.windowState + " fullScreen = " + win.fullScreen); diff --git a/layout/generic/test/file_bug514732_window.xul b/layout/generic/test/file_bug514732_window.xul index 6805e10d41c5..fa752b50c23f 100644 --- a/layout/generic/test/file_bug514732_window.xul +++ b/layout/generic/test/file_bug514732_window.xul @@ -8,6 +8,10 @@ onload="setTimeout(nextTest,0);" title="bug 514732 test"> + + diff --git a/layout/generic/test/test_bug514732-2.xul b/layout/generic/test/test_bug514732-2.xul index e684c3815677..62470305706b 100644 --- a/layout/generic/test/test_bug514732-2.xul +++ b/layout/generic/test/test_bug514732-2.xul @@ -31,8 +31,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=514732 /** Test for Bug 514732 **/ SimpleTest.waitForExplicitFinish(); -window.open("file_bug514732_window.xul", "bug514732", - "chrome,width=600,height=600,scrollbars"); +window.openDialog("file_bug514732_window.xul", "bug514732", + "chrome,width=600,height=600,scrollbars,noopener", window); ]]> diff --git a/layout/xul/test/test_resizer.xul b/layout/xul/test/test_resizer.xul index 10c1b6e9f76c..65e564754e14 100644 --- a/layout/xul/test/test_resizer.xul +++ b/layout/xul/test/test_resizer.xul @@ -68,7 +68,7 @@ XUL tests } if (/Mac/.test(navigator.platform)) { - window.open("window_resizer.xul", "_blank", "left=200,top=200,outerWidth=300,outerHeight=300,chrome"); + window.openDialog("window_resizer.xul", "_blank", "left=200,top=200,outerWidth=300,outerHeight=300,chrome,noopener", window); } else { // Skip window_resizer.xul tests. @@ -80,7 +80,7 @@ XUL tests function lastResizerTest() { - window.open("window_resizer_element.xul", "_blank", "left=200,top=200,outerWidth=300,outerHeight=300,chrome"); + window.openDialog("window_resizer_element.xul", "_blank", "left=200,top=200,outerWidth=300,outerHeight=300,chrome,noopener", window); } SimpleTest.waitForFocus(openPopup); diff --git a/layout/xul/test/test_windowminmaxsize.xul b/layout/xul/test/test_windowminmaxsize.xul index 0123f246f937..193e24549a21 100644 --- a/layout/xul/test/test_windowminmaxsize.xul +++ b/layout/xul/test/test_windowminmaxsize.xul @@ -86,7 +86,7 @@ function nextTest() SimpleTest.waitForFocus(function () { nextPopupTest(document.getElementById("panel")) } ); } else { - tests[gTestId].window = window.open(tests[gTestId].src, "_blank", "chrome,resizable=yes"); + tests[gTestId].window = docShell.rootTreeItem.domWindow.open(tests[gTestId].src, "_blank", "chrome,resizable=yes"); SimpleTest.waitForFocus(windowOpened, tests[gTestId].window); } } @@ -169,7 +169,7 @@ function nextPopupTest(panel) if (++gTestId >= popupTests.length) { // Next, check a panel that has a titlebar to ensure that it is accounted for // properly in the size. - var titledPanelWindow = window.open("titledpanelwindow.xul", "_blank", "chrome,resizable=yes"); + var titledPanelWindow = docShell.rootTreeItem.domWindow.open("titledpanelwindow.xul", "_blank", "chrome,resizable=yes"); SimpleTest.waitForFocus(titledPanelWindowOpened, titledPanelWindow); } else { diff --git a/layout/xul/test/window_resizer.xul b/layout/xul/test/window_resizer.xul index 11e999674ba1..32599295cc72 100644 --- a/layout/xul/test/window_resizer.xul +++ b/layout/xul/test/window_resizer.xul @@ -4,7 +4,7 @@ onload="setTimeout(doTest, 0)"> diff --git a/testing/mochitest/tests/SimpleTest/SimpleTest.js b/testing/mochitest/tests/SimpleTest/SimpleTest.js index 05362cf1b19c..f0cf7f498198 100644 --- a/testing/mochitest/tests/SimpleTest/SimpleTest.js +++ b/testing/mochitest/tests/SimpleTest/SimpleTest.js @@ -22,7 +22,7 @@ var parentRunner = null; // In normal test runs, the window that has a TestRunner in its parent is // the primary window. In single test runs, if there is no parent and there // is no opener then it is the primary window. -var isSingleTestRun = (parent == window && !opener) +var isSingleTestRun = (parent == window && !(opener || window.arguments && window.arguments[0].SimpleTest)); try { var isPrimaryTestWindow = !!parent.TestRunner || isSingleTestRun; } catch(e) { @@ -39,7 +39,7 @@ try { // includes SimpleTest.js. (function() { function ancestor(w) { - return w.parent != w ? w.parent : w.opener; + return w.parent != w ? w.parent : w.opener || w.arguments && w.arguments[0]; } var w = ancestor(window); diff --git a/toolkit/components/aboutmemory/tests/test_aboutmemory5.xul b/toolkit/components/aboutmemory/tests/test_aboutmemory5.xul index 0cad86253025..0bfac1d131e9 100644 --- a/toolkit/components/aboutmemory/tests/test_aboutmemory5.xul +++ b/toolkit/components/aboutmemory/tests/test_aboutmemory5.xul @@ -42,7 +42,7 @@ SpecialPowers.pushPrefEnv({"set": prefs}, function() { for (let i = 0; i < numRemotes; i++) { - let w = remotes[i] = window.open("remote.xul", "", "chrome"); + let w = remotes[i] = docShell.rootTreeItem.domWindow.open("remote.xul", "", "chrome"); w.addEventListener("load", function loadHandler() { w.removeEventListener("load", loadHandler); diff --git a/toolkit/components/aboutmemory/tests/test_dumpGCAndCCLogsToFile.xul b/toolkit/components/aboutmemory/tests/test_dumpGCAndCCLogsToFile.xul index 3c1794084917..24ee2d0ef3f8 100644 --- a/toolkit/components/aboutmemory/tests/test_dumpGCAndCCLogsToFile.xul +++ b/toolkit/components/aboutmemory/tests/test_dumpGCAndCCLogsToFile.xul @@ -24,7 +24,7 @@ SpecialPowers.pushPrefEnv({"set": [["dom.ipc.processCount", numRemotes]]}, function() { for (let i = 0; i < numRemotes; i++) { - let w = remotes[i] = window.open("remote.xul", "", "chrome"); + let w = remotes[i] = docShell.rootTreeItem.domWindow.open("remote.xul", "", "chrome"); w.addEventListener("load", function loadHandler() { w.removeEventListener("load", loadHandler); diff --git a/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul b/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul index 1912ae3119e2..21436257f67e 100644 --- a/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul +++ b/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul @@ -31,7 +31,7 @@ let remotes = []; SpecialPowers.pushPrefEnv({"set": [["dom.ipc.processCount", 3]]}, function() { for (let i = 0; i < numToOpen; i++) { - let w = remotes[i] = window.open("remote.xul", "", "chrome"); + let w = remotes[i] = docShell.rootTreeItem.domWindow.open("remote.xul", "", "chrome"); w.addEventListener("load", function loadHandler() { w.removeEventListener("load", loadHandler); diff --git a/toolkit/components/places/tests/chrome/browser_disableglobalhistory.xul b/toolkit/components/places/tests/chrome/browser_disableglobalhistory.xul index 0005be9b7083..633fbac1d820 100644 --- a/toolkit/components/places/tests/chrome/browser_disableglobalhistory.xul +++ b/toolkit/components/places/tests/chrome/browser_disableglobalhistory.xul @@ -15,7 +15,7 @@ diff --git a/toolkit/components/windowwatcher/test/test_alwaysOnTop_windows.html b/toolkit/components/windowwatcher/test/test_alwaysOnTop_windows.html index b705ed946b1d..2f6d5daab9de 100644 --- a/toolkit/components/windowwatcher/test/test_alwaysOnTop_windows.html +++ b/toolkit/components/windowwatcher/test/test_alwaysOnTop_windows.html @@ -55,7 +55,7 @@ Tests the alwaysOnTop window feature for the Windows OS. add_task(async function() { let normalWinOpened = BrowserTestUtils.domWindowOpened(); window.openDialog("data:text/html,

This is a normal window.

", - "_blank", "chrome,width=100,height=100", null); + "_blank", "chrome,width=100,height=100,noopener", null); let normalWin = await normalWinOpened; ok(normalWin, "Normal window opened"); assertAlwaysOnTop(normalWin, false); @@ -63,7 +63,7 @@ Tests the alwaysOnTop window feature for the Windows OS. let alwaysOnTopWinOpened = BrowserTestUtils.domWindowOpened(); window.openDialog("data:text/html,

This is an alwaysOnTop window.

", - "_blank", "chrome,width=100,height=100,alwaysOnTop", null); + "_blank", "chrome,width=100,height=100,alwaysOnTop,noopener", null); let alwaysOnTopWin = await alwaysOnTopWinOpened; ok(alwaysOnTopWin, "AlwaysOnTop window opened"); assertAlwaysOnTop(alwaysOnTopWin, true); diff --git a/toolkit/components/windowwatcher/test/test_dialog_arguments.html b/toolkit/components/windowwatcher/test/test_dialog_arguments.html index 7919afded709..8801898de21e 100644 --- a/toolkit/components/windowwatcher/test/test_dialog_arguments.html +++ b/toolkit/components/windowwatcher/test/test_dialog_arguments.html @@ -12,8 +12,6 @@ Test that arguments can be passed to dialogs. diff --git a/toolkit/components/windowwatcher/test/test_modal_windows.html b/toolkit/components/windowwatcher/test/test_modal_windows.html index ea496f6bcbd2..dfc15955c464 100644 --- a/toolkit/components/windowwatcher/test/test_modal_windows.html +++ b/toolkit/components/windowwatcher/test/test_modal_windows.html @@ -33,7 +33,7 @@ that is opened reports itself as being modal. }); window.openDialog("data:text/html,

This is a modal window for test_modal_windows.html

", - "_blank", "modal", null); + "_blank", "modal,noopener", null); // Since the modal runs a nested event loop, just to be on the safe side, // we'll wait a tick of the main event loop before resolving the task. await new Promise(resolve => setTimeout(resolve, 0)); diff --git a/toolkit/components/xulstore/tests/chrome/test_persistence.xul b/toolkit/components/xulstore/tests/chrome/test_persistence.xul index c11c7b0c889d..57dde1790647 100644 --- a/toolkit/components/xulstore/tests/chrome/test_persistence.xul +++ b/toolkit/components/xulstore/tests/chrome/test_persistence.xul @@ -11,11 +11,11 @@ diff --git a/toolkit/content/tests/chrome/bug263683_window.xul b/toolkit/content/tests/chrome/bug263683_window.xul index 62186d6279d3..4c50ab9935ad 100644 --- a/toolkit/content/tests/chrome/bug263683_window.xul +++ b/toolkit/content/tests/chrome/bug263683_window.xul @@ -20,7 +20,7 @@ const {AppConstants} = ChromeUtils.import("resource://gre/modules/AppConstants.jsm"); const {BrowserTestUtils} = ChromeUtils.import("resource://testing-common/BrowserTestUtils.jsm"); const {ContentTask} = ChromeUtils.import("resource://testing-common/ContentTask.jsm"); - ContentTask.setTestScope(window.opener.wrappedJSObject); + ContentTask.setTestScope(window.arguments[0]); var gPrefsvc = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch); var gFindBar = null; @@ -28,7 +28,7 @@ var imports = ["SimpleTest", "ok", "info", "is"]; for (var name of imports) { - window[name] = window.opener.wrappedJSObject[name]; + window[name] = window.arguments[0][name]; } function startTest() { diff --git a/toolkit/content/tests/chrome/bug304188_window.xul b/toolkit/content/tests/chrome/bug304188_window.xul index 4ee3c2e2e848..7e3a765ef816 100644 --- a/toolkit/content/tests/chrome/bug304188_window.xul +++ b/toolkit/content/tests/chrome/bug304188_window.xul @@ -19,14 +19,14 @@ find-menu appears in editor element which has had makeEditable() called but desi diff --git a/toolkit/content/tests/chrome/findbar_entireword_window.xul b/toolkit/content/tests/chrome/findbar_entireword_window.xul index 68e22f3b7158..783826e7c72b 100644 --- a/toolkit/content/tests/chrome/findbar_entireword_window.xul +++ b/toolkit/content/tests/chrome/findbar_entireword_window.xul @@ -20,14 +20,14 @@ diff --git a/toolkit/content/tests/chrome/test_bug304188.xul b/toolkit/content/tests/chrome/test_bug304188.xul index f41d24f9bbc3..a8b7a828424d 100644 --- a/toolkit/content/tests/chrome/test_bug304188.xul +++ b/toolkit/content/tests/chrome/test_bug304188.xul @@ -28,8 +28,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=304188 /** Test for Bug 304188 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug304188_window.xul", "findbartest", - "chrome,width=600,height=600"); +window.openDialog("bug304188_window.xul", "findbartest", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_bug331215.xul b/toolkit/content/tests/chrome/test_bug331215.xul index e0d0d1e0a945..fe3ba2f606c6 100644 --- a/toolkit/content/tests/chrome/test_bug331215.xul +++ b/toolkit/content/tests/chrome/test_bug331215.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=331215 /** Test for Bug 331215 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug331215_window.xul", "331215test", - "chrome,width=600,height=600"); +window.openDialog("bug331215_window.xul", "331215test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_bug360437.xul b/toolkit/content/tests/chrome/test_bug360437.xul index eb17adcf5dc4..1313af471f3b 100644 --- a/toolkit/content/tests/chrome/test_bug360437.xul +++ b/toolkit/content/tests/chrome/test_bug360437.xul @@ -28,8 +28,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=360437 /** Test for Bug 360437 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug360437_window.xul", "360437test", - "chrome,width=600,height=600"); +window.openDialog("bug360437_window.xul", "360437test", + "chrome,width=600,height=600,noopener", window); diff --git a/toolkit/content/tests/chrome/test_bug366992.xul b/toolkit/content/tests/chrome/test_bug366992.xul index 2c92defc5484..7b0e3060fb66 100644 --- a/toolkit/content/tests/chrome/test_bug366992.xul +++ b/toolkit/content/tests/chrome/test_bug366992.xul @@ -28,8 +28,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=366992 /** Test for Bug 366992 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug366992_window.xul", "findbartest", - "chrome,width=600,height=600"); +window.openDialog("bug366992_window.xul", "findbartest", + "chrome,width=600,height=600,noopener", window); diff --git a/toolkit/content/tests/chrome/test_bug409624.xul b/toolkit/content/tests/chrome/test_bug409624.xul index 5224e626f45a..d9d8afcc1e6d 100644 --- a/toolkit/content/tests/chrome/test_bug409624.xul +++ b/toolkit/content/tests/chrome/test_bug409624.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=409624 /** Test for Bug 409624 **/ SimpleTest.waitForExplicitFinish(); - window.open("bug409624_window.xul", "409624test", - "chrome,width=600,height=600"); + window.openDialog("bug409624_window.xul", "409624test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_bug429723.xul b/toolkit/content/tests/chrome/test_bug429723.xul index 99ee8acd9780..dbe040005976 100644 --- a/toolkit/content/tests/chrome/test_bug429723.xul +++ b/toolkit/content/tests/chrome/test_bug429723.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=429723 /** Test for Bug 429723 **/ SimpleTest.waitForExplicitFinish(); -window.open("bug429723_window.xul", "429723test", - "chrome,width=600,height=600"); +window.openDialog("bug429723_window.xul", "429723test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_bug451540.xul b/toolkit/content/tests/chrome/test_bug451540.xul index 64ae43c3c81e..0d219af4ccc6 100644 --- a/toolkit/content/tests/chrome/test_bug451540.xul +++ b/toolkit/content/tests/chrome/test_bug451540.xul @@ -30,8 +30,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=451540 /** Test for Bug 451540 **/ SimpleTest.waitForExplicitFinish(); - window.open("bug451540_window.xul", "451540test", - "chrome,width=600,height=600"); + window.openDialog("bug451540_window.xul", "451540test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_bug624329.xul b/toolkit/content/tests/chrome/test_bug624329.xul index d5dc0ce6abea..c53905b06b67 100644 --- a/toolkit/content/tests/chrome/test_bug624329.xul +++ b/toolkit/content/tests/chrome/test_bug624329.xul @@ -28,7 +28,7 @@ var timeoutID; var menu; function openTestWindow() { - win = open("bug624329_window.xul", "_blank", "width=300,resizable=yes,chrome"); + win = docShell.rootTreeItem.domWindow.openDialog("bug624329_window.xul", "_blank", "width=300,resizable=yes,chrome", window); // Close our window if the test times out so that it doesn't interfere // with later tests. timeoutID = setTimeout(function () { diff --git a/toolkit/content/tests/chrome/test_chromemargin.xul b/toolkit/content/tests/chrome/test_chromemargin.xul index a8ea32dca9f8..4fdcf3f7ba1a 100644 --- a/toolkit/content/tests/chrome/test_chromemargin.xul +++ b/toolkit/content/tests/chrome/test_chromemargin.xul @@ -19,7 +19,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_chromemargin.xul", "_blank", "chrome,width=600,height=600"); + window.openDialog("window_chromemargin.xul", "_blank", "chrome,width=600,height=600,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_cursorsnap.xul b/toolkit/content/tests/chrome/test_cursorsnap.xul index 2b54e6fb1f8e..dd3d0d3e09ac 100644 --- a/toolkit/content/tests/chrome/test_cursorsnap.xul +++ b/toolkit/content/tests/chrome/test_cursorsnap.xul @@ -65,38 +65,38 @@ function runCurrentTest() case 0: gDisable = false; gHidden = false; - window.open("window_cursorsnap_dialog.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_dialog.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; case 1: gDisable = true; gHidden = false; - window.open("window_cursorsnap_dialog.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_dialog.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; case 2: gDisable = false; gHidden = true; - window.open("window_cursorsnap_dialog.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_dialog.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; case 3: gDisable = false; gHidden = false; - window.open("window_cursorsnap_wizard.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_wizard.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; case 4: gDisable = true; gHidden = false; - window.open("window_cursorsnap_wizard.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_wizard.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; case 5: gDisable = false; gHidden = true; - window.open("window_cursorsnap_wizard.xul", "_blank", - position + "chrome,width=100,height=100"); + window.openDialog("window_cursorsnap_wizard.xul", "_blank", + position + "chrome,width=100,height=100,noopener", window); break; default: SetPrefs(false); diff --git a/toolkit/content/tests/chrome/test_dialogfocus.xul b/toolkit/content/tests/chrome/test_dialogfocus.xul index fb1ff80ba2c9..9467856ea6e1 100644 --- a/toolkit/content/tests/chrome/test_dialogfocus.xul +++ b/toolkit/content/tests/chrome/test_dialogfocus.xul @@ -58,7 +58,7 @@ function runTest() var expectedFocus = expected[step - 1]; let filename = expectedFocus == "root" ? "dialog_dialogfocus2.xul" : "dialog_dialogfocus.xul"; - var win = window.openDialog(filename, "_new", "chrome,dialog", step); + var win = docShell.rootTreeItem.domWindow.openDialog(filename, "_new", "chrome,dialog", step); function checkDialogFocus(event) { diff --git a/toolkit/content/tests/chrome/test_edit_contextmenu.html b/toolkit/content/tests/chrome/test_edit_contextmenu.html index cfe465ea0853..6876bf5c5538 100644 --- a/toolkit/content/tests/chrome/test_edit_contextmenu.html +++ b/toolkit/content/tests/chrome/test_edit_contextmenu.html @@ -15,7 +15,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1513343 SimpleTest.waitForExplicitFinish(); async function runTest() { - let win = window.open("file_edit_contextmenu.xul", "context-menu", "chrome,width=600,height=600"); + let win = window.docShell.rootTreeItem.domWindow.open("file_edit_contextmenu.xul", "context-menu", "chrome,width=600,height=600"); await new Promise(r => win.addEventListener("load", r, { once: true})); await SimpleTest.promiseFocus(win); diff --git a/toolkit/content/tests/chrome/test_findbar.xul b/toolkit/content/tests/chrome/test_findbar.xul index 9cbe73c47547..7643dde77da0 100644 --- a/toolkit/content/tests/chrome/test_findbar.xul +++ b/toolkit/content/tests/chrome/test_findbar.xul @@ -38,7 +38,7 @@ SimpleTest.waitForExplicitFinish(); SpecialPowers.pushPrefEnv({ set: [["accessibility.typeaheadfind.prefillwithselection", true]] }, () => { - window.open("findbar_window.xul", "findbartest", "chrome,width=600,height=600"); + window.openDialog("findbar_window.xul", "findbartest", "chrome,width=600,height=600,noopener", window); }); ]]> diff --git a/toolkit/content/tests/chrome/test_findbar_entireword.xul b/toolkit/content/tests/chrome/test_findbar_entireword.xul index 05a498f04f32..7907d635505b 100644 --- a/toolkit/content/tests/chrome/test_findbar_entireword.xul +++ b/toolkit/content/tests/chrome/test_findbar_entireword.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=269442 /** Test for Bug 269442 **/ SimpleTest.waitForExplicitFinish(); - window.open("findbar_entireword_window.xul", "269442test", - "chrome,width=600,height=600"); + window.openDialog("findbar_entireword_window.xul", "269442test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_findbar_events.xul b/toolkit/content/tests/chrome/test_findbar_events.xul index b28e6158bd1b..0d7186327df6 100644 --- a/toolkit/content/tests/chrome/test_findbar_events.xul +++ b/toolkit/content/tests/chrome/test_findbar_events.xul @@ -29,8 +29,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=793275 /** Test for Bug 793275 **/ SimpleTest.waitForExplicitFinish(); - window.open("findbar_events_window.xul", "793275test", - "chrome,width=600,height=600"); + window.openDialog("findbar_events_window.xul", "793275test", + "chrome,width=600,height=600,noopener", window); ]]> diff --git a/toolkit/content/tests/chrome/test_keys.xul b/toolkit/content/tests/chrome/test_keys.xul index 8bbaad728b84..ad92607ce9c9 100644 --- a/toolkit/content/tests/chrome/test_keys.xul +++ b/toolkit/content/tests/chrome/test_keys.xul @@ -12,7 +12,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_keys.xul", "_blank", "chrome,width=200,height=200"); + window.openDialog("window_keys.xul", "_blank", "chrome,width=200,height=200,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_largemenu.html b/toolkit/content/tests/chrome/test_largemenu.html index a0e786e609e2..12b3cd7b5f53 100644 --- a/toolkit/content/tests/chrome/test_largemenu.html +++ b/toolkit/content/tests/chrome/test_largemenu.html @@ -8,7 +8,7 @@ diff --git a/toolkit/content/tests/chrome/test_maximized_persist.xul b/toolkit/content/tests/chrome/test_maximized_persist.xul index 980cf0dbb7b3..4906a3d3336c 100644 --- a/toolkit/content/tests/chrome/test_maximized_persist.xul +++ b/toolkit/content/tests/chrome/test_maximized_persist.xul @@ -26,8 +26,9 @@ } function openWindow(features = "") { - return window.openDialog("window_maximized_persist.xul", - null, "chrome,dialog=no,all," + features); + return docShell.rootTreeItem.domWindow.openDialog( + "window_maximized_persist.xul", + "_blank", "chrome,dialog=no,all," + features, window); } function checkWindow(msg, win, sizemode, width, height) { diff --git a/toolkit/content/tests/chrome/test_menuitem_commands.xul b/toolkit/content/tests/chrome/test_menuitem_commands.xul index 1d96734119d9..c810cd946e5f 100644 --- a/toolkit/content/tests/chrome/test_menuitem_commands.xul +++ b/toolkit/content/tests/chrome/test_menuitem_commands.xul @@ -14,7 +14,7 @@ SimpleTest.waitForExplicitFinish(); function checkAttributes(elem, label, accesskey, disabled, hidden, isAfter) { - var is = window.opener.wrappedJSObject.SimpleTest.is; + var is = window.arguments[0].SimpleTest.is; is(elem.getAttribute("label"), label, elem.id + " label " + (isAfter ? "after" : "before") + " open"); is(elem.getAttribute("accesskey"), accesskey, elem.id + " accesskey " + (isAfter ? "after" : "before") + " open"); @@ -24,11 +24,11 @@ function checkAttributes(elem, label, accesskey, disabled, hidden, isAfter) function runOrOpen() { - if (window.opener) { + if (window.arguments) { SimpleTest.waitForFocus(runTest); } else { - window.open("test_menuitem_commands.xul", "", "chrome"); + window.openDialog("test_menuitem_commands.xul", "", "chrome,noopener", window); } } @@ -37,7 +37,7 @@ function runTest() runTestSet(""); runTestSet("bar"); window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function runTestSet(suffix) diff --git a/toolkit/content/tests/chrome/test_navigate_persist.html b/toolkit/content/tests/chrome/test_navigate_persist.html index cfdb689722a0..78693320b019 100644 --- a/toolkit/content/tests/chrome/test_navigate_persist.html +++ b/toolkit/content/tests/chrome/test_navigate_persist.html @@ -44,7 +44,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1460639 // first loading about:blank and then navigating to window_navigate_persist.html. const PERSIST_SIZE = 200; // First, load the document and resize it so the size is persisted. - let win = openDialog("window_navigate_persist.html", "_blank", `chrome,all,dialog=no`); + let win = window.docShell.rootTreeItem.domWindow + .openDialog("window_navigate_persist.html", "_blank", `chrome,all,dialog=no`); await SimpleTest.promiseFocus(win); await resize(win, PERSIST_SIZE); is(win.outerWidth, PERSIST_SIZE, "Window is resized to desired width"); @@ -52,7 +53,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1460639 win.close(); // Now mimic early first paint. - win = openDialog("about:blank", "_blank", `chrome,all,dialog=no`); + win = window.docShell.rootTreeItem.domWindow + .openDialog("about:blank", "_blank", `chrome,all,dialog=no`); await SimpleTest.promiseFocus(win, true); isnot(win.outerWidth, PERSIST_SIZE, "Initial window width is not the persisted size"); isnot(win.outerHeight, PERSIST_SIZE, "Initial window height is not the persisted size"); @@ -75,4 +77,4 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1460639
 
- \ No newline at end of file + diff --git a/toolkit/content/tests/chrome/test_panel.xul b/toolkit/content/tests/chrome/test_panel.xul index bb4955a3ad5d..dfddde97aaa5 100644 --- a/toolkit/content/tests/chrome/test_panel.xul +++ b/toolkit/content/tests/chrome/test_panel.xul @@ -13,7 +13,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_panel.xul", "_blank", "chrome,left=200,top=200,width=200,height=200"); + window.openDialog("window_panel.xul", "_blank", "chrome,left=200,top=200,width=200,height=200,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_panel_anchoradjust.xul b/toolkit/content/tests/chrome/test_panel_anchoradjust.xul index e8ae21855874..4748a5f10db9 100644 --- a/toolkit/content/tests/chrome/test_panel_anchoradjust.xul +++ b/toolkit/content/tests/chrome/test_panel_anchoradjust.xul @@ -13,7 +13,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_panel_anchoradjust.xul", "_blank", "chrome,left=200,top=200,width=200,height=200"); + window.openDialog("window_panel_anchoradjust.xul", "_blank", "chrome,left=200,top=200,width=200,height=200,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_panel_focus.xul b/toolkit/content/tests/chrome/test_panel_focus.xul index a13778cfe63c..5fb84912ce17 100644 --- a/toolkit/content/tests/chrome/test_panel_focus.xul +++ b/toolkit/content/tests/chrome/test_panel_focus.xul @@ -20,7 +20,7 @@ function runTest() // test can fail on Mac synthesizeMouse(document.documentElement, 1, 1, { type: "mousemove" }); - window.open("window_panel_focus.xul", "_blank", "chrome,width=600,height=600"); + window.openDialog("window_panel_focus.xul", "_blank", "chrome,width=600,height=600,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_popup_anchor.xul b/toolkit/content/tests/chrome/test_popup_anchor.xul index dd94ba9ca962..1fe4308f051d 100644 --- a/toolkit/content/tests/chrome/test_popup_anchor.xul +++ b/toolkit/content/tests/chrome/test_popup_anchor.xul @@ -13,7 +13,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_popup_anchor.xul", "_blank", "chrome,width=600,height=600"); + window.openDialog("window_popup_anchor.xul", "_blank", "chrome,width=600,height=600,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_popup_anchoratrect.xul b/toolkit/content/tests/chrome/test_popup_anchoratrect.xul index 9b1372c6ef15..06af2527542d 100644 --- a/toolkit/content/tests/chrome/test_popup_anchoratrect.xul +++ b/toolkit/content/tests/chrome/test_popup_anchoratrect.xul @@ -12,7 +12,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_popup_anchoratrect.xul", "_blank", "chrome,width=200,height=200"); + window.openDialog("window_popup_anchoratrect.xul", "_blank", "chrome,width=200,height=200,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_popup_preventdefault_chrome.xul b/toolkit/content/tests/chrome/test_popup_preventdefault_chrome.xul index 2956b751b9fb..773bce32c609 100644 --- a/toolkit/content/tests/chrome/test_popup_preventdefault_chrome.xul +++ b/toolkit/content/tests/chrome/test_popup_preventdefault_chrome.xul @@ -12,7 +12,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_popup_preventdefault_chrome.xul", "_blank", "chrome,width=600,height=600"); + window.openDialog("window_popup_preventdefault_chrome.xul", "_blank", "chrome,width=600,height=600,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_preferences.xul b/toolkit/content/tests/chrome/test_preferences.xul index f25bdbd6bf1e..1cb209ee8550 100644 --- a/toolkit/content/tests/chrome/test_preferences.xul +++ b/toolkit/content/tests/chrome/test_preferences.xul @@ -435,11 +435,11 @@ { // test with instantApply InitTestPrefs(true); - openDialog("window_preferences.xul", "", "modal", RunInstantPrefTest, false); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences.xul", "", "modal", RunInstantPrefTest, false); // - test deferred reset in child window InitTestPrefs(true); - openDialog("window_preferences2.xul", "", "modal", RunResetPrefTest, false); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences2.xul", "", "modal", RunResetPrefTest, false); expected = kPrefValueSet1; found = ReadPrefsFromSystem(); ok(found.int === expected.int, "instant reset deferred int" ); @@ -455,11 +455,11 @@ // test without instantApply // - general tests, similar to instant apply InitTestPrefs(false); - openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestGeneral, false); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestGeneral, false); // - test Cancel InitTestPrefs(false); - openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestClose, false); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestClose, false); var expected = kPrefValueSet1; var found = ReadPrefsFromSystem(); ok(found.int === expected.int, "non-instant cancel system int" ); @@ -471,7 +471,7 @@ // - test Accept InitTestPrefs(false); - openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestClose, true); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences.xul", "", "modal", RunNonInstantPrefTestClose, true); expected = kPrefValueSet2; found = ReadPrefsFromSystem(); ok(found.int === expected.int, "non-instant accept system int" ); @@ -483,7 +483,7 @@ // - test deferred reset in child window InitTestPrefs(false); - openDialog("window_preferences2.xul", "", "modal", RunResetPrefTest, true); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences2.xul", "", "modal", RunResetPrefTest, true); expected = CreateEmptyPrefValueSet(); found = ReadPrefsFromSystem(); ok(found.int === expected.int, "non-instant reset deferred int" ); @@ -496,7 +496,7 @@ function RunTestCommandRedirect() { - openDialog("window_preferences_commandretarget.xul", "", "modal", RunCheckCommandRedirect, true); + window.docShell.rootTreeItem.domWindow.openDialog("window_preferences_commandretarget.xul", "", "modal", RunCheckCommandRedirect, true); } function RunTest() diff --git a/toolkit/content/tests/chrome/test_preferences_beforeaccept.xul b/toolkit/content/tests/chrome/test_preferences_beforeaccept.xul index b39fc567bbf6..92e807c971d3 100644 --- a/toolkit/content/tests/chrome/test_preferences_beforeaccept.xul +++ b/toolkit/content/tests/chrome/test_preferences_beforeaccept.xul @@ -18,7 +18,7 @@ }); // No instant-apply for this test - var prefWindow = openDialog("window_preferences_beforeaccept.xul", "", "", windowOnload); + var prefWindow = window.docShell.rootTreeItem.domWindow.openDialog("window_preferences_beforeaccept.xul", "", "", windowOnload); function windowOnload() { var dialogShown = prefWindow.Preferences.get("tests.beforeaccept.dialogShown"); diff --git a/toolkit/content/tests/chrome/test_preferences_onsyncfrompreference.xul b/toolkit/content/tests/chrome/test_preferences_onsyncfrompreference.xul index 26607ce1a8dd..fb560c98e044 100644 --- a/toolkit/content/tests/chrome/test_preferences_onsyncfrompreference.xul +++ b/toolkit/content/tests/chrome/test_preferences_onsyncfrompreference.xul @@ -24,7 +24,7 @@ } let counter = 0; - let prefWindow = openDialog("window_preferences_onsyncfrompreference.xul", "", "", onSync); + let prefWindow = window.docShell.rootTreeItem.domWindow.openDialog("window_preferences_onsyncfrompreference.xul", "", "", onSync); SimpleTest.registerCleanupFunction(() => { for (let pref of PREFS) { diff --git a/toolkit/content/tests/chrome/test_screenPersistence.xul b/toolkit/content/tests/chrome/test_screenPersistence.xul index 1f340fe73a93..68713f8d75ae 100644 --- a/toolkit/content/tests/chrome/test_screenPersistence.xul +++ b/toolkit/content/tests/chrome/test_screenPersistence.xul @@ -16,8 +16,9 @@ var upper = 60 + screen.availTop; function runTest() { - win = window.openDialog("window_screenPosSize.xul", - null, + win = window.docShell.rootTreeItem.domWindow + .openDialog("window_screenPosSize.xul", + "_blank", "chrome,dialog=no,all,screenX=" + left + ",screenY=" + upper + ",outerHeight=200,outerWidth=200"); SimpleTest.waitForFocus(checkTest, win); } @@ -30,8 +31,9 @@ } function runTest2() { win.close(); - win = window.openDialog("window_screenPosSize.xul", - null, + win = window.docShell.rootTreeItem.domWindow + .openDialog("window_screenPosSize.xul", + "_blank", "chrome,dialog=no,all"); SimpleTest.waitForFocus(checkTest2, win); } diff --git a/toolkit/content/tests/chrome/test_showcaret.xul b/toolkit/content/tests/chrome/test_showcaret.xul index 3d91eb1ae49e..d2f3aaa9ccde 100644 --- a/toolkit/content/tests/chrome/test_showcaret.xul +++ b/toolkit/content/tests/chrome/test_showcaret.xul @@ -59,7 +59,7 @@ function runTest() isnot(sel2.focusNode, frames[1].document.body, "focusNode for showcaret"); ok(sel2.anchorOffset > 0, "focusOffset for showcaret"); - otherWindow = window.open("window_showcaret.xul", "_blank", "chrome,width=400,height=200"); + otherWindow = window.docShell.rootTreeItem.domWindow.open("window_showcaret.xul", "_blank", "chrome,width=400,height=200"); otherWindow.addEventListener("focus", otherWindowFocused, false); } diff --git a/toolkit/content/tests/chrome/test_subframe_origin.xul b/toolkit/content/tests/chrome/test_subframe_origin.xul index 36a425fdf036..b6838a00b982 100644 --- a/toolkit/content/tests/chrome/test_subframe_origin.xul +++ b/toolkit/content/tests/chrome/test_subframe_origin.xul @@ -20,7 +20,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_subframe_origin.xul", "_blank", "chrome,width=600,height=600"); + window.openDialog("window_subframe_origin.xul", "_blank", "chrome,width=600,height=600,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_titlebar.xul b/toolkit/content/tests/chrome/test_titlebar.xul index a7c6fbe79d0f..b518584a6d21 100644 --- a/toolkit/content/tests/chrome/test_titlebar.xul +++ b/toolkit/content/tests/chrome/test_titlebar.xul @@ -19,7 +19,7 @@ SimpleTest.waitForExplicitFinish(); function test_titlebar() { - window.open("window_titlebar.xul", "_blank", "chrome,left=200,top=200"); + window.openDialog("window_titlebar.xul", "_blank", "chrome,left=200,top=200,noopener", window); } function done(testWindow) diff --git a/toolkit/content/tests/chrome/test_tooltip.xul b/toolkit/content/tests/chrome/test_tooltip.xul index 01c8da8eba39..ad376d611507 100644 --- a/toolkit/content/tests/chrome/test_tooltip.xul +++ b/toolkit/content/tests/chrome/test_tooltip.xul @@ -12,7 +12,7 @@ SimpleTest.waitForExplicitFinish(); function runTest() { - window.open("window_tooltip.xul", "_blank", "chrome,width=700,height=700"); + window.openDialog("window_tooltip.xul", "_blank", "chrome,width=700,height=700,noopener", window); } diff --git a/toolkit/content/tests/chrome/test_window_intrinsic_size.xul b/toolkit/content/tests/chrome/test_window_intrinsic_size.xul index 78c243174ce6..96baf7e38852 100644 --- a/toolkit/content/tests/chrome/test_window_intrinsic_size.xul +++ b/toolkit/content/tests/chrome/test_window_intrinsic_size.xul @@ -10,7 +10,8 @@ SimpleTest.waitForExplicitFinish(); function openWindow(features = "") { - return window.openDialog("window_intrinsic_size.xul", + return window.docShell.rootTreeItem.domWindow + .openDialog("window_intrinsic_size.xul", "", "chrome,dialog=no,all," + features); } diff --git a/toolkit/content/tests/chrome/window_browser_drop.xul b/toolkit/content/tests/chrome/window_browser_drop.xul index b67224b24db7..2541a6044b28 100644 --- a/toolkit/content/tests/chrome/window_browser_drop.xul +++ b/toolkit/content/tests/chrome/window_browser_drop.xul @@ -224,9 +224,9 @@ async function dropLinksOnBrowser(browser, type) { } } -function info(msg) { window.opener.wrappedJSObject.SimpleTest.info(msg); } -function is(l, r, n) { window.opener.wrappedJSObject.SimpleTest.is(l,r,n); } -function ok(v, n) { window.opener.wrappedJSObject.SimpleTest.ok(v,n); } +function info(msg) { window.arguments[0].SimpleTest.info(msg); } +function is(l, r, n) { window.arguments[0].SimpleTest.is(l,r,n); } +function ok(v, n) { window.arguments[0].SimpleTest.ok(v,n); } ]]> diff --git a/toolkit/content/tests/chrome/window_chromemargin.xul b/toolkit/content/tests/chrome/window_chromemargin.xul index 57c2720ac157..d5fe4dde37b4 100644 --- a/toolkit/content/tests/chrome/window_chromemargin.xul +++ b/toolkit/content/tests/chrome/window_chromemargin.xul @@ -13,7 +13,7 @@ chrome margins rock! // Tests parsing of the chrome margin attrib on a window. function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function doSingleTest(param, shouldSucceed) @@ -62,11 +62,11 @@ function runTests() doSingleTest("1234567890,1234567890,1234567890,1234567890", true); doSingleTest("-1,-1,-1,-1", true); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); window.close(); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTests, window); +window.arguments[0].SimpleTest.waitForFocus(runTests, window); diff --git a/toolkit/content/tests/chrome/window_cursorsnap_dialog.xul b/toolkit/content/tests/chrome/window_cursorsnap_dialog.xul index df6f0bf026c0..e9111b7938ee 100644 --- a/toolkit/content/tests/chrome/window_cursorsnap_dialog.xul +++ b/toolkit/content/tests/chrome/window_cursorsnap_dialog.xul @@ -12,27 +12,27 @@ function ok(aCondition, aMessage) { - window.opener.wrappedJSObject.SimpleTest.ok(aCondition, aMessage); + window.arguments[0].SimpleTest.ok(aCondition, aMessage); } function is(aLeft, aRight, aMessage) { - window.opener.wrappedJSObject.SimpleTest.is(aLeft, aRight, aMessage); + window.arguments[0].SimpleTest.is(aLeft, aRight, aMessage); } function isnot(aLeft, aRight, aMessage) { - window.opener.wrappedJSObject.SimpleTest.isnot(aLeft, aRight, aMessage); + window.arguments[0].SimpleTest.isnot(aLeft, aRight, aMessage); } function canRetryTest() { - return window.opener.wrappedJSObject.canRetryTest(); + return window.arguments[0].canRetryTest(); } function getTimeoutTime() { - return window.opener.wrappedJSObject.getTimeoutTime(); + return window.arguments[0].getTimeoutTime(); } var gTimer; @@ -79,10 +79,10 @@ function onload() var button = document.getElementById("dialog").getButton("accept"); button.addEventListener("mousemove", onMouseMove, false); - if (window.opener.wrappedJSObject.gDisable) { + if (window.arguments[0].gDisable) { button.disabled = true; } - if (window.opener.wrappedJSObject.gHidden) { + if (window.arguments[0].gHidden) { button.hidden = true; } gRetry = false; @@ -92,9 +92,9 @@ function onload() function onunload() { if (gRetry) { - window.opener.wrappedJSObject.retryCurrentTest(); + window.arguments[0].retryCurrentTest(); } else { - window.opener.wrappedJSObject.runNextTest(); + window.arguments[0].runNextTest(); } } diff --git a/toolkit/content/tests/chrome/window_keys.xul b/toolkit/content/tests/chrome/window_keys.xul index b818eb103225..15c03c156933 100644 --- a/toolkit/content/tests/chrome/window_keys.xul +++ b/toolkit/content/tests/chrome/window_keys.xul @@ -120,7 +120,7 @@ function runTest() $("menubutton").open = false; window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } function iterateKeys(enabled, testid) @@ -147,8 +147,8 @@ function checkKey(event) gExpected = null; } -function is(l, r, n) { window.opener.wrappedJSObject.SimpleTest.is(l,r,n); } -function ok(v, n) { window.opener.wrappedJSObject.SimpleTest.ok(v,n); } +function is(l, r, n) { window.arguments[0].SimpleTest.is(l,r,n); } +function ok(v, n) { window.arguments[0].SimpleTest.ok(v,n); } SimpleTest.waitForFocus(runTest); diff --git a/toolkit/content/tests/chrome/window_largemenu.xul b/toolkit/content/tests/chrome/window_largemenu.xul index 0b2e315b5bac..84b2f644a2f4 100644 --- a/toolkit/content/tests/chrome/window_largemenu.xul +++ b/toolkit/content/tests/chrome/window_largemenu.xul @@ -161,8 +161,8 @@ function popupShown() hidePopup(); } -function is(l, r, n) { window.opener.wrappedJSObject.SimpleTest.is(l,r,n); } -function ok(v, n) { window.opener.wrappedJSObject.SimpleTest.ok(v,n); } +function is(l, r, n) { window.arguments[0].SimpleTest.is(l,r,n); } +function ok(v, n) { window.arguments[0].SimpleTest.ok(v,n); } var oldx, oldy, waitSteps = 0; function moveWindowTo(x, y, callback, arg) @@ -180,7 +180,7 @@ function moveWindowTo(x, y, callback, arg) if (window.screenX == oldx && window.screenY == oldy) { if (waitSteps++ > 10) { ok(false, "Window never moved properly to " + x + "," + y); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); window.close(); } @@ -196,7 +196,7 @@ function popupHidden() { gTestIndex++; if (gTestIndex == gTests.length) { - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); window.close(); } else if (gTests[gTestIndex] == "context menu enough space below") { @@ -392,7 +392,7 @@ function platformIsMac() return navigator.platform.indexOf("Mac") > -1; } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTests, window); +window.arguments[0].SimpleTest.waitForFocus(runTests, window); ]]> diff --git a/toolkit/content/tests/chrome/window_maximized_persist.xul b/toolkit/content/tests/chrome/window_maximized_persist.xul index 483a072fc791..f7eb695f0f6b 100644 --- a/toolkit/content/tests/chrome/window_maximized_persist.xul +++ b/toolkit/content/tests/chrome/window_maximized_persist.xul @@ -9,7 +9,7 @@ persist="height width sizemode"> diff --git a/toolkit/content/tests/chrome/window_panel.xul b/toolkit/content/tests/chrome/window_panel.xul index b60d77b75a18..32ac9c935914 100644 --- a/toolkit/content/tests/chrome/window_panel.xul +++ b/toolkit/content/tests/chrome/window_panel.xul @@ -36,11 +36,11 @@ SimpleTest.waitForExplicitFinish(); var currentTest = null; function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(left, right, message) { - window.opener.wrappedJSObject.SimpleTest.is(left, right, message); + window.arguments[0].SimpleTest.is(left, right, message); } function test_panels() @@ -57,7 +57,7 @@ function nextTest() { if (!tests.length) { window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); return; } @@ -277,7 +277,7 @@ var tests = [ }, ]; -window.opener.wrappedJSObject.SimpleTest.waitForFocus(test_panels, window); +window.arguments[0].SimpleTest.waitForFocus(test_panels, window); ]]> diff --git a/toolkit/content/tests/chrome/window_panel_anchoradjust.xul b/toolkit/content/tests/chrome/window_panel_anchoradjust.xul index d7a7bdec39ea..6e2f87aa2184 100644 --- a/toolkit/content/tests/chrome/window_panel_anchoradjust.xul +++ b/toolkit/content/tests/chrome/window_panel_anchoradjust.xul @@ -160,19 +160,19 @@ function runTests() { await popuphidden; window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); })(); } function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(left, right, message) { - window.opener.wrappedJSObject.SimpleTest.is(left, right, message); + window.arguments[0].SimpleTest.is(left, right, message); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTests, window); +window.arguments[0].SimpleTest.waitForFocus(runTests, window); ]]> diff --git a/toolkit/content/tests/chrome/window_panel_focus.xul b/toolkit/content/tests/chrome/window_panel_focus.xul index 1f678936f22b..a60cc71cdf03 100644 --- a/toolkit/content/tests/chrome/window_panel_focus.xul +++ b/toolkit/content/tests/chrome/window_panel_focus.xul @@ -81,11 +81,11 @@ function panelShown() } function ok(condition, message) { - window.opener.wrappedJSObject.SimpleTest.ok(condition, message); + window.arguments[0].SimpleTest.ok(condition, message); } function is(left, right, message) { - window.opener.wrappedJSObject.SimpleTest.is(left, right, message); + window.arguments[0].SimpleTest.is(left, right, message); } function panelHidden() @@ -111,10 +111,10 @@ function noautofocusPanelShown() function noautofocusPanelHidden() { window.close(); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(showPanel, window); +window.arguments[0].SimpleTest.waitForFocus(showPanel, window); ]]> diff --git a/toolkit/content/tests/chrome/window_popup_anchor.xul b/toolkit/content/tests/chrome/window_popup_anchor.xul index 45f5fe365aa7..5c51c86df168 100644 --- a/toolkit/content/tests/chrome/window_popup_anchor.xul +++ b/toolkit/content/tests/chrome/window_popup_anchor.xul @@ -10,7 +10,7 @@ function runTests() frames[0].openPopup(); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTests, window); +window.arguments[0].SimpleTest.waitForFocus(runTests, window); diff --git a/toolkit/content/tests/chrome/window_popup_anchoratrect.xul b/toolkit/content/tests/chrome/window_popup_anchoratrect.xul index 343357da47e4..6088f20a1195 100644 --- a/toolkit/content/tests/chrome/window_popup_anchoratrect.xul +++ b/toolkit/content/tests/chrome/window_popup_anchoratrect.xul @@ -76,7 +76,7 @@ function nextTest() { if (!tests.length) { window.close(); - window.opener.SimpleTest.finish(); + window.arguments[0].SimpleTest.finish(); return; } @@ -92,15 +92,15 @@ function popupshown(popup) function is(left, right, message) { - window.opener.SimpleTest.is(left, right, message); + window.arguments[0].SimpleTest.is(left, right, message); } function ok(value, message) { - window.opener.SimpleTest.ok(value, message); + window.arguments[0].SimpleTest.ok(value, message); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTest, window); +window.arguments[0].SimpleTest.waitForFocus(runTest, window); ]]> diff --git a/toolkit/content/tests/chrome/window_popup_preventdefault_chrome.xul b/toolkit/content/tests/chrome/window_popup_preventdefault_chrome.xul index 4d10d7fc7538..72af07229f54 100644 --- a/toolkit/content/tests/chrome/window_popup_preventdefault_chrome.xul +++ b/toolkit/content/tests/chrome/window_popup_preventdefault_chrome.xul @@ -19,8 +19,8 @@ var gHiddenNotAllowed = true; var fm = Components.classes["@mozilla.org/focus-manager;1"]. getService(Components.interfaces.nsIFocusManager); -var is = function(l, r, v) { window.opener.wrappedJSObject.SimpleTest.is(l, r, v); } -var isnot = function(l, r, v) { window.opener.wrappedJSObject.SimpleTest.isnot(l, r, v); } +var is = function(l, r, v) { window.arguments[0].SimpleTest.is(l, r, v); } +var isnot = function(l, r, v) { window.arguments[0].SimpleTest.isnot(l, r, v); } function runTest() { @@ -74,7 +74,7 @@ function popupShowing(event) function popupShown() { - window.opener.wrappedJSObject.SimpleTest.ok(!gShownNotAllowed, "popupshowing preventDefault"); + window.arguments[0].SimpleTest.ok(!gShownNotAllowed, "popupshowing preventDefault"); document.getElementById("menu").open = false; } @@ -92,12 +92,12 @@ function popupHiding(event) function popupHidden() { - window.opener.wrappedJSObject.SimpleTest.ok(!gHiddenNotAllowed, "popuphiding preventDefault"); - window.opener.wrappedJSObject.SimpleTest.finish(); + window.arguments[0].SimpleTest.ok(!gHiddenNotAllowed, "popuphiding preventDefault"); + window.arguments[0].SimpleTest.finish(); window.close(); } -window.opener.wrappedJSObject.SimpleTest.waitForFocus(runTest, window); +window.arguments[0].SimpleTest.waitForFocus(runTest, window);