Revision aaea1a41a04ac0ce565bbc59f296a647902de015 authored by Chandan Padhi on 08 March 2018, 11:46:05 UTC, committed by Blink WPT Bot on 08 March 2018, 15:58:25 UTC
InputDeviceInfo extends MediaDeviceInfo and represents audio and video input
devices. These objects are the result of calling MediaDevices.enumerateDevices().
This interface gives access to the capabilities of the input device it represents
via getCapabilities() method which will be implemented in asubsequent CL.

Intent to implement and ship:
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/h4sCuIqb_78

Bug: 817769
Change-Id: Ic9a016a05e622ee02b86d567f64c3ed84f0926c3
Reviewed-on: https://chromium-review.googlesource.com/942961
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541772}
1 parent c36f238
Raw File
navigate.iFrame.sub.html
<!DOCTYPE html>
<html>
<head>
    <title>W3C Beacon As Fetch (Fetch KeepAlive) Navigate Test</title>
</head>
<body>
    <script src="beacon-common.sub.js"></script>
    <script>
        "use strict";

        // An array should be passed through postMessage to this iFrame, where
        //     [0] contains a test case id as defined in beacon-common.js.
        //     [1] is the URL for the keep alive fetch() or sendBeacon().
        //     [2] string indicating the function to call - "fetch" to call fetch() or "beacon" to call sendBeacon().
        // The testcase id is returned back to the window through postMesage.
        var tests = 0;
        window.onmessage = function(e) {
            var testCaseId = e.data[0];
            var url = e.data[1];
            var func = e.data[2];
            tests++;

            // Reconstruct enough of the test case to send the keep alive fetch (data and url).
            var testCase = testLookup[testCaseId];
            testCase.url = url;

            if (func === "beacon") {
                // sendData calls sendBeacon
                sendData(testCase);
            }
            else {
                throw new Error(func + " is an invalid function");
            }

            // Let the main page continue the test if we don't immediately throw an exception.
            parent.postMessage(testCaseId, "*");

            // Now navigate ourselves.
            if (tests == sampleTests.length) {
                window.location = "http://{{host}}:{{ports[http][0]}}/";
            }
        }
    </script>
</body>
</html>
back to top