Skip to content

Instantly share code, notes, and snippets.

@sakurai-youhei
Last active July 3, 2020 10:58
Show Gist options
  • Save sakurai-youhei/e72d5627ae3051dfd4271a41826a2d95 to your computer and use it in GitHub Desktop.
Save sakurai-youhei/e72d5627ae3051dfd4271a41826a2d95 to your computer and use it in GitHub Desktop.
Brython with Cordova
document.addEventListener('deviceready', brython, false);
(function() {
var original_ajax_load_script = __BRYTHON__.ajax_load_script;
__BRYTHON__.ajax_load_script = function(script) {
try {
original_ajax_load_script(script);
} catch {
custom_ajax_load_script(script);
}
};
function custom_ajax_load_script(script) {
var url = script.url,
name = script.name;
var xhr = new XMLHttpRequest();
xhr.addEventListener("loadend", function(evt) {
if(this.status === 0){
var src = this.responseText;
if(script.is_ww){
__BRYTHON__.webworkers[name] = src;
}else{
__BRYTHON__.tasks.splice(0, 0, [$B.run_script, src, name, true]);
}
__BRYTHON__.loop();
} else {
throw Error(url + " not found");
}
});
var qs = __BRYTHON__.$options.cache ? '' : (url.search(/\?/) > -1 ? '&' : '?') + Date.now();
xhr.open("GET", url + qs, true);
xhr.send();
}
})();
<script src="js/monkeypatch-brython.js"></script>
<script src="js/deviceready-brython.js"></script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment