mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
559da3d613
We need to rely on the audio channel service for all products now, so supporting running without it seems pointless at this point.
78 lines
1.5 KiB
HTML
78 lines
1.5 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<title>Test for video controller in windows</title>
|
|
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
</head>
|
|
<body>
|
|
<pre id="test">
|
|
</pre>
|
|
|
|
<script type="application/javascript">
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
var observer = {
|
|
observe: function(subject, topic, data) {
|
|
ok(false, "should not receive audio-playback notification!");
|
|
}
|
|
};
|
|
|
|
var observerService = SpecialPowers.Cc["@mozilla.org/observer-service;1"]
|
|
.getService(SpecialPowers.Ci.nsIObserverService);
|
|
|
|
var video = document.createElement("video");
|
|
video.loop = true;
|
|
video.src = "noaudio.webm";
|
|
|
|
video.onplay = video.onpause = function() {
|
|
// Yield to the event loop a few times to make sure that audio-playback is not dispatched.
|
|
SimpleTest.executeSoon(function() {
|
|
SimpleTest.executeSoon(function() {
|
|
SimpleTest.executeSoon(function() {
|
|
runTest();
|
|
});
|
|
});
|
|
});
|
|
};
|
|
|
|
var tests = [
|
|
function() {
|
|
observerService.addObserver(observer, "audio-playback", false);
|
|
ok(true, "Observer set");
|
|
runTest();
|
|
},
|
|
|
|
function() {
|
|
video.play();
|
|
},
|
|
|
|
function() {
|
|
video.pause();
|
|
},
|
|
|
|
function() {
|
|
observerService.removeObserver(observer, "audio-playback");
|
|
ok(true, "Observer removed");
|
|
runTest();
|
|
}
|
|
];
|
|
|
|
function runTest() {
|
|
if (!tests.length) {
|
|
SimpleTest.finish();
|
|
return;
|
|
}
|
|
|
|
var test = tests.shift();
|
|
test();
|
|
}
|
|
|
|
runTest();
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|
|
|