forked from FOSS/BangleApps
new app custom
parent
8747a4ba10
commit
81dc5a1802
12
apps.json
12
apps.json
|
@ -1118,6 +1118,18 @@
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"tabata.app.js","url":"tabata.js"},
|
{"name":"tabata.app.js","url":"tabata.js"},
|
||||||
{"name":"tabata.img","url":"tabata-icon.js","evaluate":true}
|
{"name":"tabata.img","url":"tabata-icon.js","evaluate":true}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{ "id": "custom",
|
||||||
|
"name": "Custom Boot Code ",
|
||||||
|
"icon": "custom.png",
|
||||||
|
"version":"0.01",
|
||||||
|
"description": "Add code you want to run at boot time",
|
||||||
|
"tags": "tool,system",
|
||||||
|
"type": "bootloader",
|
||||||
|
"custom":"custom.html",
|
||||||
|
"storage": [
|
||||||
|
{"name":"custom"}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="../../css/spectre.min.css">
|
||||||
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.32.0/codemirror.min.css">
|
||||||
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.52.2/addon/lint/lint.min.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<script src="../../lib/customize.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.32.0/codemirror.min.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.52.2/mode/javascript/javascript.min.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.52.2/addon/lint/lint.min.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.52.2/addon/lint/javascript-lint.min.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.52.2/addon/hint/javascript-hint.min.js"></script>
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jshint/2.11.0/jshint.min.js"></script>
|
||||||
|
<p>Type your javascript code here</p>
|
||||||
|
<p><textarea id="custom-js"></textarea></p>
|
||||||
|
<p>Then click <button id="upload" class="btn btn-primary">Upload</button></p>
|
||||||
|
<script>
|
||||||
|
const item = "custom.boot.js";
|
||||||
|
const id = "custom-js";
|
||||||
|
const sample = "//Bangle.setOptions({wakeOnBTN2:false});";
|
||||||
|
var localeModule = null;
|
||||||
|
var editor = {};
|
||||||
|
|
||||||
|
if (localStorage.getItem(item) === null) {
|
||||||
|
localStorage.setItem(item, sample);
|
||||||
|
}
|
||||||
|
|
||||||
|
document.getElementById(id).value = localStorage.getItem(item);
|
||||||
|
|
||||||
|
// The code editor
|
||||||
|
var lintFlags = {
|
||||||
|
esversion: 6, // Enable ES6 for literals, arrow fns, binary
|
||||||
|
evil: true, // don't warn on use of strings in setInterval
|
||||||
|
laxbreak: true, // don't warn about newlines in expressions
|
||||||
|
laxcomma: true // don't warn about commas at the start of the line
|
||||||
|
};
|
||||||
|
editor = CodeMirror.fromTextArea(document.getElementById(id), {
|
||||||
|
width: "100%",
|
||||||
|
height: "100%",
|
||||||
|
matchBrackets: true,
|
||||||
|
mode: { name: "javascript", globalVars: false },
|
||||||
|
lineWrapping: true,
|
||||||
|
showTrailingSpace: true,
|
||||||
|
lint: lintFlags,
|
||||||
|
gutters: ["CodeMirror-linenumbers", "CodeMirror-lint-markers"],
|
||||||
|
lineNumbers: true
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById("upload").addEventListener("click", function() {
|
||||||
|
if (!editor.state.lint.marked.length) {
|
||||||
|
localeModule = editor.getValue();
|
||||||
|
localStorage.setItem(item, localeModule);
|
||||||
|
sendCustomizedApp({
|
||||||
|
storage: [{ name: item, content: localeModule }]
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
Loading…
Reference in New Issue