blob: 4538c8382781b60f1a19d938e18ff8a27cf0dad4 [file] [log] [blame]
function callWithTrustedClick(callback) {
return new Promise(resolve => {
let button = document.createElement('button');
button.textContent = 'click to continue test';
button.style.display = 'block';
button.style.fontSize = '20px';
button.style.padding = '10px';
button.onclick = () => {
document.body.removeChild(button);
resolve(callback());
};
document.body.appendChild(button);
test_driver.click(button);
});
}
function loadVideo() {
return new Promise(resolve => {
let video = document.createElement('video');
video.src = '/media/movie_5.ogv';
video.onloadedmetadata = () => {
resolve(video);
};
});
}
// Calls requestPictureInPicture() in a context that's 'allowed to request PiP'.
function requestPictureInPictureWithTrustedClick(videoElement) {
return callWithTrustedClick(
() => videoElement.requestPictureInPicture());
}