From 1dfbfcfd0700121f4a198fe13bd94fb063e2dbf2 Mon Sep 17 00:00:00 2001 From: Gregory Pappas Date: Wed, 28 Feb 2024 21:29:39 +0000 Subject: [PATCH] Bug 1878401 - part 7 - Pass BrowsingContext to nsIFilePicker::Init in tests r=extension-reviewers,settings-reviewers,credential-management-reviewers,anti-tracking-reviewers,devtools-reviewers,sgalich,pbz,nchevobbe,zombie,migration-reviewers,mconley Depends on D200551 Differential Revision: https://phabricator.services.mozilla.com/D200552 --- accessible/tests/browser/e10s/browser_file_input.js | 2 +- .../content/test/contextMenu/browser_bug1798178.js | 2 +- .../contextMenu/browser_contextmenu_save_blocked.js | 2 +- browser/base/content/test/general/browser_bug676619.js | 2 +- .../test/general/browser_save_link-perwindowpb.js | 2 +- .../general/browser_save_link_when_window_navigates.js | 2 +- .../general/browser_save_private_link_perwindowpb.js | 2 +- .../base/content/test/general/browser_save_video.js | 2 +- .../content/test/general/browser_save_video_frame.js | 2 +- .../test/tabPrompts/browser_confirmFolderUpload.js | 2 +- .../webextensions/browser_permissions_local_file.js | 2 +- .../aboutlogins/tests/browser/browser_openExport.js | 2 +- .../aboutlogins/tests/browser/browser_openImportCSV.js | 2 +- .../test/browser/browser_saveLink.js | 2 +- .../test/browser/browser_download_overwrite.js | 2 +- .../test/browser/browser_downloads_panel_dontshow.js | 2 +- .../test/browser/browser_downloads_panel_opens.js | 2 +- .../test/browser/browser_image_mimetype_issues.js | 2 +- .../browser_policy_allowfileselectiondialogs.js | 2 +- .../test/browser/browser_ext_tabs_saveAsPDF.js | 4 ++-- .../migration/tests/browser/browser_file_migration.js | 2 +- .../tests/browser/browser_safari_passwords.js | 2 +- .../migration/tests/unit/test_Chrome_permissions.js | 2 +- .../migration/tests/unit/test_Safari_permissions.js | 2 +- .../test/browser/browser_firstPartyIsolation_saveAs.js | 2 +- .../preferences/tests/browser_cert_export.js | 2 +- .../browser/browser_privatebrowsing_downloadLastDir.js | 2 +- .../browser_privatebrowsing_downloadLastDir_c.js | 2 +- .../browser/browser_screenshots_test_downloads.js | 2 +- ...ser_aboutdebugging_addons_temporary_install_path.js | 2 +- .../aboutdebugging/test/browser/helper-addons.js | 2 +- .../test/mochitest/browser_dbg-features-source-tree.js | 2 +- .../debugger/test/mochitest/browser_dbg-overrides.js | 2 +- .../jsonview/test/browser_jsonview_content_type.js | 2 +- .../client/jsonview/test/browser_jsonview_save_json.js | 2 +- .../netmonitor/test/browser_net_save_response_as.js | 2 +- .../browser_jsterm_file_load_save_keyboard_shortcut.js | 2 +- ...er_webconsole_context_menu_export_console_output.js | 2 +- dom/events/test/test_accesskey.html | 2 +- dom/filesystem/tests/test_webkitdirectory.html | 10 +++++----- dom/html/test/forms/test_change_event.html | 2 +- dom/html/test/forms/test_input_event.html | 2 +- dom/html/test/forms/test_input_file_picker.html | 2 +- dom/html/test/test_bug500885.html | 2 +- dom/html/test/test_bug592802.html | 2 +- dom/html/test/test_filepicker_default_directory.html | 2 +- dom/html/test/test_input_file_cancel_event.html | 2 +- dom/html/test/test_input_files_not_nsIFile.html | 2 +- dom/html/test/test_multipleFilePicker.html | 2 +- dom/ipc/tests/test_bug1086684.js | 2 +- dom/security/test/https-only/browser_save_as.js | 2 +- dom/tests/browser/browser_persist_cookies.js | 2 +- .../browser/browser_persist_cross_origin_iframe.js | 2 +- dom/tests/browser/browser_persist_image_accept.js | 2 +- .../browser/browser_persist_mixed_content_image.js | 2 +- .../test/browser/browser_utility_filepicker_crashed.js | 6 +++++- layout/forms/test/test_bug536567_perwindowpb.html | 2 +- .../mochitest/browser/browser_loadPKCS11Module_ui.js | 2 +- .../test/browser/browser_socialtracking_save_image.js | 2 +- .../test/browser/browser_staticPartition_saveAs.js | 2 +- .../test/browser/browser_ext_downloads_filters.js | 2 +- .../test/browser/browser_ext_downloads_referrer.js | 2 +- .../mochitest/test_chrome_ext_downloads_saveAs.html | 2 +- .../mochitest/test_chrome_ext_downloads_uniquify.html | 2 +- .../pdfjs/test/browser_pdfjs_download_button.js | 2 +- .../pdfjs/test/browser_pdfjs_nonpdf_filename.js | 2 +- toolkit/components/pdfjs/test/browser_pdfjs_saveas.js | 2 +- .../pdfjs/test/browser_pdfjs_stamp_telemetry.js | 2 +- toolkit/components/printing/tests/head.js | 4 ++-- .../tooltiptext/tests/browser_input_file_tooltips.js | 2 +- .../tests/browser/browser_default_audio_filename.js | 2 +- .../tests/browser/browser_default_image_filename.js | 2 +- .../browser/browser_default_image_filename_redirect.js | 2 +- toolkit/content/tests/browser/browser_saveImageURL.js | 2 +- .../browser/browser_save_folder_standalone_image.js | 2 +- .../tests/browser/browser_save_resend_postdata.js | 2 +- .../tests/browser/browser_save_wrongextension.js | 2 +- .../test/browser/browser_page_options_install_addon.js | 2 +- .../browser_download_open_with_internal_handler.js | 2 +- .../mochitest/browser_download_spam_permissions.js | 2 +- .../tests/mochitest/browser_download_urlescape.js | 2 +- .../exthandler/tests/mochitest/browser_pdf_save_as.js | 2 +- .../tests/mochitest/browser_save_filenames.js | 2 +- .../mochitest/browser_shows_where_to_save_dialog.js | 2 +- .../tests/mochitest/browser_txt_download_save_as.js | 2 +- 85 files changed, 95 insertions(+), 91 deletions(-) diff --git a/accessible/tests/browser/e10s/browser_file_input.js b/accessible/tests/browser/e10s/browser_file_input.js index 238e48740ef6..4c68e8e6da9a 100644 --- a/accessible/tests/browser/e10s/browser_file_input.js +++ b/accessible/tests/browser/e10s/browser_file_input.js @@ -34,7 +34,7 @@ addAccessibleTask( function chooseFile(id) { return invokeContentTask(browser, [id], contentId => { const MockFilePicker = content.SpecialPowers.MockFilePicker; - MockFilePicker.init(content); + MockFilePicker.init(content.browsingContext); MockFilePicker.useBlobFile(); MockFilePicker.returnValue = MockFilePicker.returnOK; const input = content.document.getElementById(contentId); diff --git a/browser/base/content/test/contextMenu/browser_bug1798178.js b/browser/base/content/test/contextMenu/browser_bug1798178.js index 529665a6f9b3..de8bab18201f 100644 --- a/browser/base/content/test/contextMenu/browser_bug1798178.js +++ b/browser/base/content/test/contextMenu/browser_bug1798178.js @@ -15,7 +15,7 @@ const TEST_URL = ) + "file_bug1798178.html"; let MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); function createTemporarySaveDirectory() { let saveDir = Services.dirsvc.get("TmpD", Ci.nsIFile); diff --git a/browser/base/content/test/contextMenu/browser_contextmenu_save_blocked.js b/browser/base/content/test/contextMenu/browser_contextmenu_save_blocked.js index 5064d9a316a0..062fbeac084c 100644 --- a/browser/base/content/test/contextMenu/browser_contextmenu_save_blocked.js +++ b/browser/base/content/test/contextMenu/browser_contextmenu_save_blocked.js @@ -4,7 +4,7 @@ "use strict"; var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); function mockPromptService() { let { prompt } = Services; diff --git a/browser/base/content/test/general/browser_bug676619.js b/browser/base/content/test/general/browser_bug676619.js index 24d8d884474e..80bbce8cb0a2 100644 --- a/browser/base/content/test/general/browser_bug676619.js +++ b/browser/base/content/test/general/browser_bug676619.js @@ -1,5 +1,5 @@ var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); function waitForNewWindow() { return new Promise(resolve => { diff --git a/browser/base/content/test/general/browser_save_link-perwindowpb.js b/browser/base/content/test/general/browser_save_link-perwindowpb.js index b018212280c1..d5a0eef86ce0 100644 --- a/browser/base/content/test/general/browser_save_link-perwindowpb.js +++ b/browser/base/content/test/general/browser_save_link-perwindowpb.js @@ -2,7 +2,7 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); // Trigger a save of a link in public mode, then trigger an identical save // in private mode and ensure that the second request is differentiated from diff --git a/browser/base/content/test/general/browser_save_link_when_window_navigates.js b/browser/base/content/test/general/browser_save_link_when_window_navigates.js index e7507fcbb083..1c68b91ddf84 100644 --- a/browser/base/content/test/general/browser_save_link_when_window_navigates.js +++ b/browser/base/content/test/general/browser_save_link_when_window_navigates.js @@ -2,7 +2,7 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); const SAVE_PER_SITE_PREF = "browser.download.lastDir.savePerSite"; const ALWAYS_DOWNLOAD_DIR_PREF = "browser.download.useDownloadDir"; diff --git a/browser/base/content/test/general/browser_save_private_link_perwindowpb.js b/browser/base/content/test/general/browser_save_private_link_perwindowpb.js index 8ede97e640f7..42632bdc5a57 100644 --- a/browser/base/content/test/general/browser_save_private_link_perwindowpb.js +++ b/browser/base/content/test/general/browser_save_private_link_perwindowpb.js @@ -43,7 +43,7 @@ function promiseImageDownloaded() { return new Promise((resolve, reject) => { let fileName; let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); function onTransferComplete(downloadSuccess) { ok( diff --git a/browser/base/content/test/general/browser_save_video.js b/browser/base/content/test/general/browser_save_video.js index 276088fbb111..d8dc5c6e2e0f 100644 --- a/browser/base/content/test/general/browser_save_video.js +++ b/browser/base/content/test/general/browser_save_video.js @@ -2,7 +2,7 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); /** * TestCase for bug 564387 diff --git a/browser/base/content/test/general/browser_save_video_frame.js b/browser/base/content/test/general/browser_save_video_frame.js index 877c33bcd349..11fe3ac80e79 100644 --- a/browser/base/content/test/general/browser_save_video_frame.js +++ b/browser/base/content/test/general/browser_save_video_frame.js @@ -49,7 +49,7 @@ function waitForTransferComplete() { */ add_task(async function () { let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); // Create the folder the video will be saved into. let destDir = createTemporarySaveDirectory(); diff --git a/browser/base/content/test/tabPrompts/browser_confirmFolderUpload.js b/browser/base/content/test/tabPrompts/browser_confirmFolderUpload.js index 62b0ed4f2ba1..52596095c45e 100644 --- a/browser/base/content/test/tabPrompts/browser_confirmFolderUpload.js +++ b/browser/base/content/test/tabPrompts/browser_confirmFolderUpload.js @@ -88,7 +88,7 @@ async function testUploadPrompt(confirmUpload) { await ContentTask.spawn(browser, { path }, args => { let MockFilePicker = content.SpecialPowers.MockFilePicker; MockFilePicker.init( - content, + content.browsingContext, "A Mock File Picker", content.SpecialPowers.Ci.nsIFilePicker.modeGetFolder ); diff --git a/browser/base/content/test/webextensions/browser_permissions_local_file.js b/browser/base/content/test/webextensions/browser_permissions_local_file.js index a2fdc34db3a8..7f8f256e1420 100644 --- a/browser/base/content/test/webextensions/browser_permissions_local_file.js +++ b/browser/base/content/test/webextensions/browser_permissions_local_file.js @@ -10,7 +10,7 @@ async function installFile(filename) { file.leafName = filename; let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.setFiles([file]); MockFilePicker.afterOpenCallback = MockFilePicker.cleanup; diff --git a/browser/components/aboutlogins/tests/browser/browser_openExport.js b/browser/components/aboutlogins/tests/browser/browser_openExport.js index c5df84c447a6..1a615108622f 100644 --- a/browser/components/aboutlogins/tests/browser/browser_openExport.js +++ b/browser/components/aboutlogins/tests/browser/browser_openExport.js @@ -27,7 +27,7 @@ add_setup(async function () { return !events || !events.length; }, "Waiting for content telemetry events to get cleared"); - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.useAnyFile(); MockFilePicker.returnValue = MockFilePicker.returnOK; diff --git a/browser/components/aboutlogins/tests/browser/browser_openImportCSV.js b/browser/components/aboutlogins/tests/browser/browser_openImportCSV.js index 4800b8a309de..48df0d17b2ed 100644 --- a/browser/components/aboutlogins/tests/browser/browser_openImportCSV.js +++ b/browser/components/aboutlogins/tests/browser/browser_openImportCSV.js @@ -48,7 +48,7 @@ class CsvImportHelper { * @returns {Promise} A promise that is resolved when the picker selects the file. */ static async clickImportFromCsvMenu(browser, linesInFile) { - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnOK; let csvFile = await LoginTestUtils.file.setupCsvFileWithLines(linesInFile); diff --git a/browser/components/contextualidentity/test/browser/browser_saveLink.js b/browser/components/contextualidentity/test/browser/browser_saveLink.js index 65f60f7eef33..175be43bf2a6 100644 --- a/browser/components/contextualidentity/test/browser/browser_saveLink.js +++ b/browser/components/contextualidentity/test/browser/browser_saveLink.js @@ -6,7 +6,7 @@ const URI = "/browser/browser/components/contextualidentity/test/browser/saveLink.sjs"; let MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); add_setup(async function () { info("Setting the prefs."); diff --git a/browser/components/downloads/test/browser/browser_download_overwrite.js b/browser/components/downloads/test/browser/browser_download_overwrite.js index 7be16aa56558..d4de077060ec 100644 --- a/browser/components/downloads/test/browser/browser_download_overwrite.js +++ b/browser/components/downloads/test/browser/browser_download_overwrite.js @@ -9,7 +9,7 @@ const TEST_ROOT = getRootDirectory(gTestPath).replace( ); var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); Services.scriptloader.loadSubScript( "chrome://mochitests/content/browser/toolkit/content/tests/browser/common/mockTransfer.js", diff --git a/browser/components/downloads/test/browser/browser_downloads_panel_dontshow.js b/browser/components/downloads/test/browser/browser_downloads_panel_dontshow.js index 28c7bc302f9f..240c90048e96 100644 --- a/browser/components/downloads/test/browser/browser_downloads_panel_dontshow.js +++ b/browser/components/downloads/test/browser/browser_downloads_panel_dontshow.js @@ -2,7 +2,7 @@ // download occurs but not when a user manually saves a page. let MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); async function promiseDownloadFinished(list) { return new Promise(resolve => { diff --git a/browser/components/downloads/test/browser/browser_downloads_panel_opens.js b/browser/components/downloads/test/browser/browser_downloads_panel_opens.js index 7c44939e594a..f8e034aaa59a 100644 --- a/browser/components/downloads/test/browser/browser_downloads_panel_opens.js +++ b/browser/components/downloads/test/browser/browser_downloads_panel_opens.js @@ -2,7 +2,7 @@ * http://creativecommons.org/publicdomain/zero/1.0/ */ let { MockFilePicker } = SpecialPowers; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); registerCleanupFunction(() => MockFilePicker.cleanup()); /** diff --git a/browser/components/downloads/test/browser/browser_image_mimetype_issues.js b/browser/components/downloads/test/browser/browser_image_mimetype_issues.js index b893a26d89f7..5185f8889993 100644 --- a/browser/components/downloads/test/browser/browser_image_mimetype_issues.js +++ b/browser/components/downloads/test/browser/browser_image_mimetype_issues.js @@ -9,7 +9,7 @@ const TEST_ROOT = getRootDirectory(gTestPath).replace( ); var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); /* * Popular websites implement image optimization as serving files with diff --git a/browser/components/enterprisepolicies/tests/browser/browser_policy_allowfileselectiondialogs.js b/browser/components/enterprisepolicies/tests/browser/browser_policy_allowfileselectiondialogs.js index 94f6bba631a9..4ba4a7cf2513 100644 --- a/browser/components/enterprisepolicies/tests/browser/browser_policy_allowfileselectiondialogs.js +++ b/browser/components/enterprisepolicies/tests/browser/browser_policy_allowfileselectiondialogs.js @@ -154,7 +154,7 @@ add_task(async function test_cancel_event() { add_task(async function test_nsIFilePicker_open() { let picker = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker); - picker.init(window, "", Ci.nsIFilePicker.modeSave); + picker.init(window.browsingContext, "", Ci.nsIFilePicker.modeSave); let result = await new Promise(resolve => picker.open(res => resolve(res))); diff --git a/browser/components/extensions/test/browser/browser_ext_tabs_saveAsPDF.js b/browser/components/extensions/test/browser/browser_ext_tabs_saveAsPDF.js index fdff1dddbfe4..4ec6bd949b46 100644 --- a/browser/components/extensions/test/browser/browser_ext_tabs_saveAsPDF.js +++ b/browser/components/extensions/test/browser/browser_ext_tabs_saveAsPDF.js @@ -30,7 +30,7 @@ async function testReturnStatus(expectedStatus) { } let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); if (expectedStatus == "replaced" || expectedStatus == "not_replaced") { MockFilePicker.returnValue = MockFilePicker.returnReplace; @@ -126,7 +126,7 @@ async function testFileName(expectedFileName) { } let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnOK; diff --git a/browser/components/migration/tests/browser/browser_file_migration.js b/browser/components/migration/tests/browser/browser_file_migration.js index 04241d29d5f3..c73dfc445608 100644 --- a/browser/components/migration/tests/browser/browser_file_migration.js +++ b/browser/components/migration/tests/browser/browser_file_migration.js @@ -68,7 +68,7 @@ add_setup(async () => { // We use MockFilePicker to simulate a native file picker, and prepare it // to return a dummy file pointed at TEST_FILE_PATH. The file at // TEST_FILE_PATH is not required (nor expected) to exist. - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); registerCleanupFunction(() => { MockFilePicker.cleanup(); }); diff --git a/browser/components/migration/tests/browser/browser_safari_passwords.js b/browser/components/migration/tests/browser/browser_safari_passwords.js index c005342b4663..e9ebd05e0aad 100644 --- a/browser/components/migration/tests/browser/browser_safari_passwords.js +++ b/browser/components/migration/tests/browser/browser_safari_passwords.js @@ -18,7 +18,7 @@ const TEST_FILE_PATH = getTestFilePath("dummy_file.csv"); const { MockFilePicker } = SpecialPowers; add_setup(async function () { - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); registerCleanupFunction(() => { MockFilePicker.cleanup(); }); diff --git a/browser/components/migration/tests/unit/test_Chrome_permissions.js b/browser/components/migration/tests/unit/test_Chrome_permissions.js index 6dfd8bccebdf..04bded3c8e77 100644 --- a/browser/components/migration/tests/unit/test_Chrome_permissions.js +++ b/browser/components/migration/tests/unit/test_Chrome_permissions.js @@ -35,7 +35,7 @@ add_setup(async () => { gTempDir = do_get_tempdir(); await IOUtils.writeJSON(PathUtils.join(gTempDir.path, "Local State"), []); - MockFilePicker.init(globalThis); + MockFilePicker.init(/* mock BrowsingContext */ { window: globalThis }); registerCleanupFunction(() => { MockFilePicker.cleanup(); }); diff --git a/browser/components/migration/tests/unit/test_Safari_permissions.js b/browser/components/migration/tests/unit/test_Safari_permissions.js index eaa6c7788e19..3e11adc3d887 100644 --- a/browser/components/migration/tests/unit/test_Safari_permissions.js +++ b/browser/components/migration/tests/unit/test_Safari_permissions.js @@ -30,7 +30,7 @@ add_setup(async () => { registerFakePath("ULibDir", tempDir); - MockFilePicker.init(globalThis); + MockFilePicker.init(/* mock BrowsingContext */ { window: globalThis }); registerCleanupFunction(() => { MockFilePicker.cleanup(); }); diff --git a/browser/components/originattributes/test/browser/browser_firstPartyIsolation_saveAs.js b/browser/components/originattributes/test/browser/browser_firstPartyIsolation_saveAs.js index b51ac12849c2..026676578278 100644 --- a/browser/components/originattributes/test/browser/browser_firstPartyIsolation_saveAs.js +++ b/browser/components/originattributes/test/browser/browser_firstPartyIsolation_saveAs.js @@ -27,7 +27,7 @@ const TEST_PATH_PAGE = `${TEST_BASE_PATH}file_favicon.png`; const TEST_PATH_FRAME = `${TEST_BASE_PATH}file_favicon.png`; let MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); const tempDir = createTemporarySaveDirectory(); MockFilePicker.displayDirectory = tempDir; diff --git a/browser/components/preferences/tests/browser_cert_export.js b/browser/components/preferences/tests/browser_cert_export.js index 48769f84e6b6..f37cdec767c6 100644 --- a/browser/components/preferences/tests/browser_cert_export.js +++ b/browser/components/preferences/tests/browser_cert_export.js @@ -78,7 +78,7 @@ async function checkCertExportWorks( ) { MockFilePicker.displayDirectory = destDir; var destFile = destDir.clone(); - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.filterIndex = exportType; MockFilePicker.showCallback = function (fp) { info("showCallback"); diff --git a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir.js b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir.js index dd358bee734c..4311638ec1c1 100644 --- a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir.js +++ b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir.js @@ -17,7 +17,7 @@ function test() { source: Services.io.newURI("http://test1.com/file"), }; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = Ci.nsIFilePicker.returnOK; let prefs = Services.prefs.getBranch("browser.download."); diff --git a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir_c.js b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir_c.js index 04e510096a09..9973874b25f8 100644 --- a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir_c.js +++ b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_downloadLastDir_c.js @@ -14,7 +14,7 @@ function test() { ); let MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = Ci.nsIFilePicker.returnOK; let validateFileNameToRestore = validateFileName; diff --git a/browser/components/screenshots/tests/browser/browser_screenshots_test_downloads.js b/browser/components/screenshots/tests/browser/browser_screenshots_test_downloads.js index 770a7ae06b12..51d5b858b9e4 100644 --- a/browser/components/screenshots/tests/browser/browser_screenshots_test_downloads.js +++ b/browser/components/screenshots/tests/browser/browser_screenshots_test_downloads.js @@ -29,7 +29,7 @@ add_setup(async function () { ], }); - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.useAnyFile(); MockFilePicker.returnValue = MockFilePicker.returnOK; diff --git a/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_addons_temporary_install_path.js b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_addons_temporary_install_path.js index a6f9fde0c180..da2596ef5391 100644 --- a/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_addons_temporary_install_path.js +++ b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_addons_temporary_install_path.js @@ -45,7 +45,7 @@ add_task(async function testPreferenceRetrievedWhenInstallingExtension() { await selectThisFirefoxPage(document, window.AboutDebugging.store); const MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); const onFilePickerShown = new Promise(resolve => { MockFilePicker.showCallback = fp => { resolve(fp); diff --git a/devtools/client/aboutdebugging/test/browser/helper-addons.js b/devtools/client/aboutdebugging/test/browser/helper-addons.js index e3a8be3761f2..dd299a3c0f93 100644 --- a/devtools/client/aboutdebugging/test/browser/helper-addons.js +++ b/devtools/client/aboutdebugging/test/browser/helper-addons.js @@ -180,7 +180,7 @@ function prepareMockFilePicker(pathOrFile) { // Mock the file picker to select a test addon const MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.setFiles([file]); } /* exported prepareMockFilePicker */ diff --git a/devtools/client/debugger/test/mochitest/browser_dbg-features-source-tree.js b/devtools/client/debugger/test/mochitest/browser_dbg-features-source-tree.js index f4fdd30898e7..4590f0c2b32f 100644 --- a/devtools/client/debugger/test/mochitest/browser_dbg-features-source-tree.js +++ b/devtools/client/debugger/test/mochitest/browser_dbg-features-source-tree.js @@ -124,7 +124,7 @@ add_task(async function testSimpleSourcesWithManualClickExpand() { info("Test the download file context menu"); // Before trigerring the menu, mock the file picker const MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); const nsiFile = new FileUtils.File( PathUtils.join(PathUtils.tempDir, `export_source_content_${Date.now()}.log`) ); diff --git a/devtools/client/debugger/test/mochitest/browser_dbg-overrides.js b/devtools/client/debugger/test/mochitest/browser_dbg-overrides.js index 48f589379902..0e2dc546091d 100644 --- a/devtools/client/debugger/test/mochitest/browser_dbg-overrides.js +++ b/devtools/client/debugger/test/mochitest/browser_dbg-overrides.js @@ -70,7 +70,7 @@ add_task(async function () { info("Select test.js tree node, and add override"); const MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); const nsiFile = new FileUtils.File( PathUtils.join(PathUtils.tempDir, "test.js") ); diff --git a/devtools/client/jsonview/test/browser_jsonview_content_type.js b/devtools/client/jsonview/test/browser_jsonview_content_type.js index c3298cc7d91b..f72ac14b5d6b 100644 --- a/devtools/client/jsonview/test/browser_jsonview_content_type.js +++ b/devtools/client/jsonview/test/browser_jsonview_content_type.js @@ -34,7 +34,7 @@ add_task(async function () { ); SpecialPowers.setBoolPref("browser.download.useDownloadDir", false); const { MockFilePicker } = SpecialPowers; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnCancel; for (const kind of Object.keys(contentTypes)) { diff --git a/devtools/client/jsonview/test/browser_jsonview_save_json.js b/devtools/client/jsonview/test/browser_jsonview_save_json.js index 506967df00b2..d83741685eb4 100644 --- a/devtools/client/jsonview/test/browser_jsonview_save_json.js +++ b/devtools/client/jsonview/test/browser_jsonview_save_json.js @@ -8,7 +8,7 @@ const saveButton = "button.save"; const prettifyButton = "button.prettyprint"; const { MockFilePicker } = SpecialPowers; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnOK; Services.scriptloader.loadSubScript( diff --git a/devtools/client/netmonitor/test/browser_net_save_response_as.js b/devtools/client/netmonitor/test/browser_net_save_response_as.js index e8e3918ecbf4..638fb50794c7 100644 --- a/devtools/client/netmonitor/test/browser_net_save_response_as.js +++ b/devtools/client/netmonitor/test/browser_net_save_response_as.js @@ -4,7 +4,7 @@ "use strict"; var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); /** * Tests if saving a response to a file works.. diff --git a/devtools/client/webconsole/test/browser/browser_jsterm_file_load_save_keyboard_shortcut.js b/devtools/client/webconsole/test/browser/browser_jsterm_file_load_save_keyboard_shortcut.js index 73e93b47f780..d0cfb7640b7b 100644 --- a/devtools/client/webconsole/test/browser/browser_jsterm_file_load_save_keyboard_shortcut.js +++ b/devtools/client/webconsole/test/browser/browser_jsterm_file_load_save_keyboard_shortcut.js @@ -20,7 +20,7 @@ add_task(async function () { // create file to import first info("Create the file to import"); const { MockFilePicker } = SpecialPowers; - MockFilePicker.init(window); + MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnOK; const file = await createLocalFile(); diff --git a/devtools/client/webconsole/test/browser/browser_webconsole_context_menu_export_console_output.js b/devtools/client/webconsole/test/browser/browser_webconsole_context_menu_export_console_output.js index a119f4c06cf7..757b4a5ae7e2 100644 --- a/devtools/client/webconsole/test/browser/browser_webconsole_context_menu_export_console_output.js +++ b/devtools/client/webconsole/test/browser/browser_webconsole_context_menu_export_console_output.js @@ -39,7 +39,7 @@ httpServer.registerPathHandler("/test.js", function (request, response) { const TEST_URI = `http://localhost:${httpServer.identity.primaryPort}/`; const { MockFilePicker } = SpecialPowers; -MockFilePicker.init(window); +MockFilePicker.init(window.browsingContext); MockFilePicker.returnValue = MockFilePicker.returnOK; var FileUtils = ChromeUtils.importESModule( diff --git a/dom/events/test/test_accesskey.html b/dom/events/test/test_accesskey.html index cdfff54a2892..4d382f227010 100644 --- a/dom/events/test/test_accesskey.html +++ b/dom/events/test/test_accesskey.html @@ -143,7 +143,7 @@ add_task(async function modifyAccessKey() { add_task(async function file_picker() { const file = document.getElementById("file"); const MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext); MockFilePicker.returnValue = MockFilePicker.returnCancel; let clicked = false; diff --git a/dom/filesystem/tests/test_webkitdirectory.html b/dom/filesystem/tests/test_webkitdirectory.html index 50080ad7ba85..982887cbcf9a 100644 --- a/dom/filesystem/tests/test_webkitdirectory.html +++ b/dom/filesystem/tests/test_webkitdirectory.html @@ -48,7 +48,7 @@ function populateInputFile(aInputFile) { var script = SpecialPowers.loadChromeScript(url); var MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); async function onOpened(message) { MockFilePicker.useDirectory(message.dir); @@ -134,7 +134,7 @@ async function test_individualSymlink(aInputFile) { // -- Have the picker pick it var MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeOpen); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeOpen); MockFilePicker.displayDirectory = dir; let pickerShown = new Promise(resolve => { @@ -186,7 +186,7 @@ function test_changeDataWhileWorking() { var script = SpecialPowers.loadChromeScript(url); var MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); let promptHandled; // Let's start retrieving the root nsIFile object @@ -203,7 +203,7 @@ function test_changeDataWhileWorking() { // input.click() pointing to the root dir .then(async function(aDir) { MockFilePicker.cleanup(); - MockFilePicker.init(window, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); MockFilePicker.useDirectory(aDir); var input = document.getElementById("inputFileDirectoryChange"); @@ -228,7 +228,7 @@ function test_changeDataWhileWorking() { // Now let's click again and wait for onchange. .then(async function(aDir) { MockFilePicker.cleanup(); - MockFilePicker.init(window, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext, "A Mock File Picker", SpecialPowers.Ci.nsIFilePicker.modeGetFolder); MockFilePicker.useDirectory(aDir); let input = document.getElementById("inputFileDirectoryChange"); diff --git a/dom/html/test/forms/test_change_event.html b/dom/html/test/forms/test_change_event.html index 8be4554c58ee..b20a62343963 100644 --- a/dom/html/test/forms/test_change_event.html +++ b/dom/html/test/forms/test_change_event.html @@ -61,7 +61,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=722599 SimpleTest.waitForExplicitFinish(); var MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext); function fileInputBlurTest() { var btn = document.getElementById('fileInput'); diff --git a/dom/html/test/forms/test_input_event.html b/dom/html/test/forms/test_input_event.html index 72863ca335c5..d3fbba4b3bc6 100644 --- a/dom/html/test/forms/test_input_event.html +++ b/dom/html/test/forms/test_input_event.html @@ -149,7 +149,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=851780 } var MockFilePicker = SpecialPowers.MockFilePicker; - MockFilePicker.init(window); + MockFilePicker.init(SpecialPowers.wrap(window).browsingContext); function testUserInput() { // Simulating an OK click and with a file name return. diff --git a/dom/html/test/forms/test_input_file_picker.html b/dom/html/test/forms/test_input_file_picker.html index 296c12bb7e46..f05ee9e6a050 100644 --- a/dom/html/test/forms/test_input_file_picker.html +++ b/dom/html/test/forms/test_input_file_picker.html @@ -78,7 +78,7 @@ SimpleTest.waitForExplicitFinish(); SimpleTest.requestFlakyTimeout("untriaged"); var MockFilePicker = SpecialPowers.MockFilePicker; -MockFilePicker.init(window); +MockFilePicker.init(SpecialPowers.wrap(window).browsingContext); // The following lists are from toolkit/content/filepicker.properties which is used by filePicker var imageExtensionList = "*.jpe; *.jpg; *.jpeg; *.gif; *.png; *.bmp; *.ico; *.svg; *.svgz; *.tif; *.tiff; *.ai; *.drw; *.pct; *.psp; *.xcf; *.psd; *.raw; *.webp; *.heic" diff --git a/dom/html/test/test_bug500885.html b/dom/html/test/test_bug500885.html index 3ab9225a4c06..5972ed171efd 100644 --- a/dom/html/test/test_bug500885.html +++ b/dom/html/test/test_bug500885.html @@ -20,7 +20,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=500885