https://github.com/web-platform-tests/wpt
Raw File
Tip revision: d474c2a0587f5ff6ae05fde66ac6f43a106d0d05 authored by Anne van Kesteren on 16 November 2018, 12:38:42 UTC
EventSource: test U+0000 in ID better
Tip revision: d474c2a
trusted-click.js
// Invokes callback from a trusted click event, to satisfy
// https://html.spec.whatwg.org/#triggered-by-user-activation
function trusted_click(test, callback, container)
{
    var document = container.ownerDocument;
    var button = document.createElement("button");
    button.textContent = "click to continue test";
    button.style.display = "block";
    button.style.fontSize = "20px";
    button.style.padding = "10px";
    button.onclick = test.step_func(function()
    {
        callback();
        container.removeChild(button);
    });
    container.appendChild(button);
}

// Invokes element.requestFullscreen() from a trusted click.
function trusted_request(test, element, container)
{
    trusted_click(test, () => {
        var promise = element.requestFullscreen();
        if (promise) {
            // Keep the promise resolution silent. Otherwise unhandledrejection
            // may fire for the failure test cases.
            promise.then(() => {}, () => {});
        }
    }, container || element.parentNode);
}

// Invokes element.requestFullscreen() from a trusted click.
function trusted_request_with_promise(test, element, container, resolve, reject)
{
    trusted_click(test, () => {
        element.requestFullscreen().then(resolve, reject);
    }, container || element.parentNode);
}
back to top