<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=633602 --> <head> <title>Bug 633602</title> <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"> </script> <script type="application/javascript" src="/tests/SimpleTest/EventUtils.js"> </script> <script type="application/javascript" src="pointerlock_utils.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=633602"> Mozilla Bug 633602</a> <p id="display"></p> <div id="div"></div> <pre id="test"> <script type="application/javascript"> /* * Test for Bug 633602 * Tests full-screen-api.pointer-lock pref */ SimpleTest.waitForExplicitFinish(); var div = document.getElementById("div") , prefEnabled = false , prefDisabled = false; function runTests () { ok(prefEnabled, "Element should be able to lock the pointer " + "if pointer-lock pref is set to TRUE"); ok(prefDisabled, "Element should NOT be able to lock the pointer " + "if pointer-lock pref is set to FALSE"); } document.addEventListener("pointerlockchange", function (e) { if (document.pointerLockElement === div) { prefEnabled = true; document.exitPointerLock(); } else { SpecialPowers.setBoolPref("full-screen-api.pointer-lock.enabled", false ); div.requestPointerLock(); } }, false); document.addEventListener("pointerlockerror", function (e) { prefDisabled = true; addFullscreenChangeContinuation("exit", function() { SpecialPowers.setBoolPref("full-screen-api.pointer-lock.enabled", true ); runTests(); SimpleTest.finish(); }); document.exitFullscreen(); }, false); function start() { addFullscreenChangeContinuation("enter", function() { SpecialPowers.setBoolPref("full-screen-api.pointer-lock.enabled", true ); div.requestPointerLock(); }); div.requestFullscreen(); } </script> </pre> </body> </html>