browser_fullscreen_newtab.js (1516B)
1 /* Any copyright is dedicated to the Public Domain. 2 http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 "use strict"; 5 6 // This test verifies that when in fullscreen mode, and a new tab is opened, 7 // fullscreen mode is exited and the url bar is focused. 8 add_task(async function test_fullscreen_display_none() { 9 await SpecialPowers.pushPrefEnv({ 10 set: [ 11 ["test.wait300msAfterTabSwitch", true], 12 ["full-screen-api.enabled", true], 13 ["full-screen-api.allow-trusted-requests-only", false], 14 ], 15 }); 16 17 let tab = await BrowserTestUtils.openNewForegroundTab( 18 gBrowser, 19 "https://example.org/browser/browser/base/content/test/fullscreen/fullscreen.html" 20 ); 21 22 let fullScreenEntered = BrowserTestUtils.waitForEvent( 23 document, 24 "fullscreenchange", 25 false, 26 () => document.fullscreenElement 27 ); 28 29 await SpecialPowers.spawn(tab.linkedBrowser, [], async () => { 30 content.document.getElementById("request").click(); 31 }); 32 33 await fullScreenEntered; 34 35 let fullScreenExited = BrowserTestUtils.waitForEvent( 36 document, 37 "fullscreenchange", 38 false, 39 () => !document.fullscreenElement 40 ); 41 42 let focusPromise = BrowserTestUtils.waitForEvent(window, "focus"); 43 EventUtils.synthesizeKey("T", { accelKey: true }); 44 await focusPromise; 45 46 is( 47 document.activeElement, 48 gURLBar.inputField, 49 "url bar is focused after new tab opened" 50 ); 51 52 await fullScreenExited; 53 54 BrowserTestUtils.removeTab(gBrowser.selectedTab); 55 BrowserTestUtils.removeTab(tab); 56 });