fune/browser/base/content/aboutTabCrashed.js
Wes Kocher c1121ee892 Backed out 6 changesets (bug 1110511) for automation timeouts in mochitest-bc suites
Backed out changeset eddfd7f32a1c (bug 1110511)
Backed out changeset 0eb0dda094b3 (bug 1110511)
Backed out changeset 8e20cd68ca78 (bug 1110511)
Backed out changeset c7b983f65568 (bug 1110511)
Backed out changeset 219d86f78b6b (bug 1110511)
Backed out changeset 0e055b648e10 (bug 1110511)
2015-10-05 16:38:03 -07:00

47 lines
1.2 KiB
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
function parseQueryString() {
let url = document.documentURI;
let queryString = url.replace(/^about:tabcrashed?e=tabcrashed/, "");
let titleMatch = queryString.match(/d=([^&]*)/);
return titleMatch && titleMatch[1] ? decodeURIComponent(titleMatch[1]) : "";
}
document.title = parseQueryString();
function shouldSendReport() {
if (!document.documentElement.classList.contains("crashDumpAvailable"))
return false;
return document.getElementById("sendReport").checked;
}
function sendEvent(message) {
let event = new CustomEvent("AboutTabCrashedMessage", {
bubbles: true,
detail: {
message,
sendCrashReport: shouldSendReport(),
},
});
document.dispatchEvent(event);
}
function closeTab() {
sendEvent("closeTab");
}
function restoreTab() {
sendEvent("restoreTab");
}
function restoreAll() {
sendEvent("restoreAll");
}
// Error pages are loaded as LOAD_BACKGROUND, so they don't get load events.
var event = new CustomEvent("AboutTabCrashedLoad", {bubbles:true});
document.dispatchEvent(event);