multi-screen-fullscreen-move.tentative.https.html (1787B)
1 <!DOCTYPE html> 2 <meta name="timeout" content="long"> 3 <title>Window Management test: target-screen element.requestFullscreen()</title> 4 <link rel="help" href="https://w3c.github.io/window-management/"> 5 Tests use of multi-screen details to move fullscreen between screens.<br> 6 The host device must have 2+ screens to yield meaningful results.<br><br> 7 <ul id="list"></ul> 8 <script src="/resources/testharness.js"></script> 9 <script src="/resources/testharnessreport.js"></script> 10 <script src="/resources/testdriver.js"></script> 11 <script src="/resources/testdriver-vendor.js"></script> 12 <script src="resources/helpers.js"></script> 13 <script> 14 'use strict'; 15 16 promise_test(async test => { 17 await setUpWindowManagement(test); 18 const originalScreen = window.screenDetails.currentScreen; 19 // Request fullscreen on the current screen; the window should stay there. 20 await buttonClick(test, `Request fullscreen on '${originalScreen.label}'`); 21 await document.documentElement.requestFullscreen({ screen: originalScreen }); 22 await assertWindowOnScreen(window, originalScreen); 23 assert_true(!!document.fullscreenElement); 24 25 for (const s of window.screenDetails.screens) { 26 // Request fullscreen on screen `s`; `window` should move there. 27 await buttonClick(test, `Request fullscreen on '${s.label}'`); 28 await document.documentElement.requestFullscreen({ screen: s }); 29 await assertWindowOnScreen(window, s); 30 assert_true(!!document.fullscreenElement); 31 } 32 33 // Exit fullscreen; `window` should move back to `originalScreen`. 34 await buttonClick(test, `Exit fullscreen`); 35 await document.exitFullscreen(); 36 await assertWindowOnScreen(window, originalScreen); 37 assert_false(!!document.fullscreenElement); 38 }, 'Use multi-screen details to move fullscreen between screens'); 39 </script>