Simplify loading code

This commit is contained in:
JustinCB 2020-05-02 08:32:22 -04:00 committed by Mike Welsh
parent 93eb796045
commit 29eacdfd21
1 changed files with 9 additions and 25 deletions

View File

@ -14,24 +14,6 @@
* unintentionally. * unintentionally.
* 2. The ability to load extension resources such as .wasm files * 2. The ability to load extension resources such as .wasm files
*/ */
function insert_script() {
let setup_scriptelem = document.createElement("script");
let setup_src = "var runtime_path = \"" +
ext_path + "\";\nvar obfuscated_event_prefix = \"" +
obfuscated_event_prefix + "\";";
let scriptelem = document.createElement("script");
setup_scriptelem.appendChild(document.createTextNode(setup_src));
document.head.appendChild(setup_scriptelem);
scriptelem.src=ext_path + "dist/ruffle.js";
document.head.appendChild(scriptelem);
}
function insert_ruffle(mutationsList,observer) {
if (document.head) {
insert_script();
observer.disconnect();
}
}
let page_optout = document.getElementsByTagName("html")[0].dataset.ruffleOptout !== undefined; let page_optout = document.getElementsByTagName("html")[0].dataset.ruffleOptout !== undefined;
let obfuscated_event_prefix = "rufEvent" + Math.floor(Math.random() * 100000000000); let obfuscated_event_prefix = "rufEvent" + Math.floor(Math.random() * 100000000000);
let ext_path = ""; let ext_path = "";
@ -41,11 +23,13 @@ if (chrome && chrome.extension && chrome.extension.getURL) {
ext_path = browser.runtime.getURL("dist/ruffle.js").replace("dist/ruffle.js", ""); ext_path = browser.runtime.getURL("dist/ruffle.js").replace("dist/ruffle.js", "");
} }
if (!(page_optout||window.RufflePlayer)) { if (!(page_optout||window.RufflePlayer)) {
if (document.head) { let setup_scriptelem = document.createElement("script");
insert_script(); let setup_src = "var runtime_path = \"" +
} ext_path + "\";\nvar obfuscated_event_prefix = \"" +
else { obfuscated_event_prefix + "\";";
const observer = new MutationObserver(insert_ruffle); let scriptelem = document.createElement("script");
observer.observe(document, {childList: true, subtree: true}); setup_scriptelem.appendChild(document.createTextNode(setup_src));
} (document.head || document.documentElement).appendChild(setup_scriptelem);
scriptelem.src=ext_path + "dist/ruffle.js";
(document.head || document.documentElement).appendChild(scriptelem);
} }