tor-browser

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

incumbent.html (1178B)


      1 <!DOCTYPE html>
      2 <title>Incumbent page used as a test helper</title>
      3 <button id="focus-opener-button" onclick="opener.focus()">Focus opener</button>
      4 <script>
      5 'use strict';
      6 
      7 function pageDone(expectedMessage) {
      8  return new Promise(resolve => {
      9    window.addEventListener('message', e => {
     10      if (e.data === expectedMessage) {
     11        resolve();
     12      }
     13    });
     14  });
     15 }
     16 
     17 onload = async () => {
     18  await opener.test_driver.bless("open current popup", null, window);
     19  const currentDone = pageDone("current page");
     20  const currentWin = window.open("current.html", "_blank");
     21  await currentDone;
     22  await opener.test_driver.bless("open relevant popup", null, window);
     23  const relevantDone = pageDone("relevant page");
     24  const relevantWin = window.open("relevant.html", "_blank");
     25  await relevantDone;
     26  window.openTestPopup = function() {
     27    // This is the multi-global incarnation
     28    return currentWin.open.call(relevantWin, "/resources/blank.html", "_blank");
     29  };
     30  opener.currentWin = currentWin;
     31  opener.relevantWin = relevantWin;
     32  await opener.test_driver.click(document.getElementById("focus-opener-button"));
     33  opener.postMessage("incumbent page", "*");
     34 };
     35 </script>