tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

reactivate_helper.html (1318B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <body>
      4 <script>
      5 var loadsWaiting = 0;
      6 var elements = [];
      7 
      8 function checkAllLoaded() {
      9  --loadsWaiting;
     10  if (loadsWaiting == 0) {
     11    parent.loadedAll(elements);
     12  }
     13 }
     14 
     15 function loadedData(event) {
     16  var e = event.target;
     17  parent.ok(!elements.includes(e), "Element already loaded: " + e._name);
     18  parent.info("Loaded " + e._name);
     19  elements.push(e);
     20  // Reset "onerror" handler to avoid triggering another error in removeNodeAndSource().
     21  e.onerror = null;
     22  checkAllLoaded();
     23 
     24 }
     25 
     26 function error(event) {
     27  var e = event.target;
     28  parent.info("Error " + e._name);
     29  // Don't wait for the element encounting errors.
     30  checkAllLoaded();
     31 }
     32 
     33 for (var i = 0; i < parent.gSmallTests.length; ++i) {
     34  var test = parent.gSmallTests[i];
     35  var elemType = /^audio/.test(test.type) ? "audio" : "video";
     36  // Associate these elements with the subframe's document
     37  var e = document.createElement(elemType);
     38  e.preload = "metadata";
     39  if (e.canPlayType(test.type)) {
     40    e.src = test.name;
     41    e._name = test.name;
     42    e.onloadeddata = loadedData;
     43    e.onerror = error;
     44    e.load();
     45    ++loadsWaiting;
     46    parent.info("Loading " + e._name);
     47  }
     48 }
     49 
     50 if (loadsWaiting == 0) {
     51  parent.todo(false, "Can't play anything");
     52 } else {
     53  parent.SimpleTest.waitForExplicitFinish();
     54 }
     55 </script>
     56 </body>
     57 </html>