blob: 13bc69272bf5d1c91798c31b70bc35204ca697de [file] [log] [blame]
<!DOCTYPE html>
<html>
<title>Test that taps on the sides of the video are propagated.</title>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../media-controls.js"></script>
<div id="outer">
<video controls width=500 preload=none src="../content/60_sec_video.webm"></video>
</div>
<script>
async_test(t => {
const video = document.querySelector('video');
const outerDiv = document.getElementById('outer');
const events = ['mousedown', 'click', 'mouseup'];
let eventsHandled = {};
video.addEventListener('loadedmetadata', t.step_func(() => {
const coords = videoLeftEdgeCoordinates(video);
singleTapAtCoordinates(coords[0], coords[1]);
}), { once: true });
// The tap on the edge of the video should get propagated out to the outer div.
events.forEach(evtName => {
outerDiv.addEventListener(evtName, checkDone.bind(null, evtName), { once: true });
});
function checkDone(evtName) {
eventsHandled[evtName] = true;
for (let i = 0; i < events.length; i++) {
if (!eventsHandled[events[i]])
return;
}
t.done();
}
video.load();
});
</script>
</html>