<!DOCTYPE HTML>
<html>
<head>
<script src="../resources/js-test.js"></script>
<script src="../http/tests/resources/pointer-lock/pointer-lock-test-harness.js"></script>
</head>
<body>
<div>
<div id="target1"></div>
</div>
<script>
description("bug 90391: pointer lock mouse move events then window.open should not crash.")
window.jsTestIsAsync = true;
targetdiv1 = document.getElementById("target1");
todo = [
function () {
debug(" Locking targetdiv1.")
targetdiv1.requestPointerLock();
document.onpointerlockchange = function () {
document.onpointerlockchange = null;
testPassed("document.onpointerlockchange event received.");
doNextStep();
};
},
function () {
debug(" Sending mouse move events.")
var mouseMoveEvents = 0;
targetdiv1.onmousemove = function () {
if (++mouseMoveEvents == 2) {
targetdiv1.onmousemove = null;
doNextStep();
}
}
if (window.eventSender) {
eventSender.mouseMoveTo(100, 100);
eventSender.mouseMoveTo(200, 200);
}
},
function () {
debug(" Calling window.open.")
gc();
window.open();
testPassed("Didn't crash");
document.exitPointerLock();
doNextStep();
},
];
doNextStepWithUserGesture();
</script>
</body>
</html>