summaryrefslogtreecommitdiffstats
path: root/layout/base/tests/file_bug607529.html
blob: bebcd09de95e453d1e40f9b8b20bc6f5b338a12f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!DOCTYPE html>
<script>
  var bc = new BroadcastChannel("bug607529");
  var closed = false;
  window.onerror = function(msg, url, line) {
    var myMsg = JSON.stringify({msg: msg, url: url, line: line, error: true});
    bc.postMessage(myMsg);
  }
  
  var report = false;
  
  function g() {
    if (report && !closed) {
      bc.postMessage("callbackHappened");
    }
    window.requestAnimationFrame(g);
  }
  g();

  bc.onmessage = function (e) {
    var msg = e.data;
    if (msg == "report") {
      report = true;
    } else if (msg == "navigateToPage") {
      window.location = "file_bug607529-1.html";
    } else if (msg == "close") {
      bc.postMessage("closed");
      bc.close();
      closed = true;
      window.close();
    }
  };

  window.onload = function() {
    bc.postMessage("loaded");
  }

  addEventListener("pagehide", function f(e) {
    if (!e.persisted && !report) {
      bc.postMessage("notcached");
    }
  }, false);

  addEventListener("pageshow", function f(e) {
    if (e.persisted) {
      bc.postMessage("revived");
    }
  }, false);


</script>