mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-03-05 00:02:37 +00:00

This excludes dom/, otherwise the file size is too large for phabricator to handle. This is an autogenerated commit to handle scripts loading mochitest harness files, in the simple case where the script src is on the same line as the tag. This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170 using the `--part 2` argument. Differential Revision: https://phabricator.services.mozilla.com/D27456 --HG-- extra : moz-landing-system : lando
84 lines
3.1 KiB
HTML
84 lines
3.1 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=1080360
|
|
-->
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Test for Bug 1080360</title>
|
|
<meta name="author" content="Maksim Lebedev" />
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script src="/tests/SimpleTest/EventUtils.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
<style>
|
|
#target, #listener { background: yellow; padding: 10px; }
|
|
</style>
|
|
<script type="application/javascript">
|
|
var target = undefined;
|
|
var listener = undefined;
|
|
var test_target = false;
|
|
var test_listener_got = false;
|
|
var test_listener_lost = false;
|
|
var test_document = false;
|
|
|
|
function TargetHandler(event) {
|
|
logger("Target receive event: " + event.type);
|
|
listener.setPointerCapture(event.pointerId);
|
|
test_target = true;
|
|
}
|
|
function ListenerHandler(event) {
|
|
logger("Listener receive event: " + event.type);
|
|
if(event.type == "gotpointercapture") {
|
|
test_listener_got = true;
|
|
listener.remove();
|
|
}
|
|
if(event.type == "lostpointercapture")
|
|
test_listener_lost = true;
|
|
}
|
|
function DocumentHandler(event) {
|
|
logger("Document receive event: " + event.type);
|
|
if(event.type == "lostpointercapture")
|
|
test_document = true;
|
|
}
|
|
function logger(message) {
|
|
console.log(message);
|
|
var log = document.getElementById('log');
|
|
log.innerHTML = message + "<br>" + log.innerHTML;
|
|
}
|
|
|
|
function prepareTest() {
|
|
parent.turnOnPointerEvents(executeTest);
|
|
}
|
|
function executeTest()
|
|
{
|
|
logger("executeTest");
|
|
target = document.getElementById("target");
|
|
listener = document.getElementById("listener");
|
|
target.addEventListener("pointerdown", TargetHandler);
|
|
listener.addEventListener("gotpointercapture", ListenerHandler);
|
|
listener.addEventListener("lostpointercapture", ListenerHandler);
|
|
document.addEventListener("lostpointercapture", DocumentHandler);
|
|
var rect = target.getBoundingClientRect();
|
|
synthesizeMouse(target, rect.width/2, rect.height/2, {type: "mousedown"});
|
|
synthesizeMouse(target, rect.width/2, rect.height/2, {type: "mousemove"});
|
|
synthesizeMouse(target, rect.width/2, rect.height/2, {type: "mouseup"});
|
|
finishTest();
|
|
}
|
|
function finishTest() {
|
|
parent.is(test_target, true, "pointerdown event should be received by target");
|
|
parent.is(test_listener_got, true, "gotpointercapture event should be received by listener");
|
|
parent.is(test_listener_lost, false, "listener should not receive lostpointercapture event");
|
|
parent.is(test_document, true, "document should receive lostpointercapture event");
|
|
logger("finishTest");
|
|
parent.finishTest();
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="prepareTest()">
|
|
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1080360">Mozilla Bug 1080360</a>
|
|
<div id="target">div id=target</div>
|
|
<div id="listener">div id=listener</div>
|
|
<pre id="log"></pre>
|
|
</body>
|
|
</html>
|