fix to work without fastload utils. tweaks to settings page.
parent
2268b438e7
commit
4940bcb834
|
|
@ -8,22 +8,30 @@
|
||||||
storage.write("quicklaunch.json", settings);
|
storage.write("quicklaunch.json", settings);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let leaveTrace = function(trace) {
|
||||||
|
settings.trace = trace;
|
||||||
|
storage.writeJSON("quicklaunch.json", settings);
|
||||||
|
return trace;
|
||||||
|
};
|
||||||
|
|
||||||
|
let trace = settings.trace;
|
||||||
|
|
||||||
let touchHandler = (_,e) => {
|
let touchHandler = (_,e) => {
|
||||||
let R = Bangle.appRect;
|
let R = Bangle.appRect;
|
||||||
if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return;
|
if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return;
|
||||||
qlTrace += "t";
|
trace = leaveTrace(trace+"t");
|
||||||
if (settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
};
|
};
|
||||||
|
|
||||||
let swipeHandler = (lr,ud) => {
|
let swipeHandler = (lr,ud) => {
|
||||||
if (lr == -1) qlTrace += "l"; // l=left,
|
if (lr == -1) trace = leaveTrace(trace+"l"); // l=left,
|
||||||
if (lr == 1) qlTrace += "r"; // r=right,
|
if (lr == 1) trace = leaveTrace(trace+"r"); // r=right,
|
||||||
if (ud == -1) qlTrace += "u"; // u=up,
|
if (ud == -1) trace = leaveTrace(trace+"u"); // u=up,
|
||||||
if (ud == 1) qlTrace += "d"; // d=down.
|
if (ud == 1) trace = leaveTrace(trace+"d"); // d=down.
|
||||||
if (lr == -1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (lr == -1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (lr == 1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (lr == 1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (ud == -1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (ud == -1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (ud == 1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (ud == 1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
};
|
};
|
||||||
|
|
||||||
Bangle.setUI({
|
Bangle.setUI({
|
||||||
|
|
@ -49,8 +57,9 @@
|
||||||
|
|
||||||
// Draw app hints
|
// Draw app hints
|
||||||
g.setFont("Vector", 11)
|
g.setFont("Vector", 11)
|
||||||
.setFontAlign(0,1,3).drawString(settings[qlTrace+"lapp"].name, R.x2, R.y+R.h/2)
|
.setFontAlign(0,1,3).drawString(settings[trace+"lapp"].name, R.x2, R.y+R.h/2)
|
||||||
.setFontAlign(0,1,1).drawString(settings[qlTrace+"rapp"].name, R.x, R.y+R.h/2)
|
.setFontAlign(0,1,1).drawString(settings[trace+"rapp"].name, R.x, R.y+R.h/2)
|
||||||
.setFontAlign(0,1,0).drawString(settings[qlTrace+"uapp"].name, R.x+R.w/2, R.y2)
|
.setFontAlign(0,1,0).drawString(settings[trace+"uapp"].name, R.x+R.w/2, R.y2)
|
||||||
.setFontAlign(0,-1,0).drawString(settings[qlTrace+"dapp"].name, R.x+R.w/2, R.y);
|
.setFontAlign(0,-1,0).drawString(settings[trace+"dapp"].name, R.x+R.w/2, R.y)
|
||||||
|
.setFontAlign(0,0,0).drawString(settings[trace+"tapp"].name, R.x+R.w/2, R.y+R.h/2);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,26 +8,33 @@
|
||||||
storage.write("quicklaunch.json", settings);
|
storage.write("quicklaunch.json", settings);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let leaveTrace = function(trace) {
|
||||||
|
settings.trace = trace;
|
||||||
|
storage.writeJSON("quicklaunch.json", settings);
|
||||||
|
return trace;
|
||||||
|
};
|
||||||
|
|
||||||
|
let trace;
|
||||||
|
|
||||||
Bangle.on("touch", (_,e) => {
|
Bangle.on("touch", (_,e) => {
|
||||||
if (!Bangle.CLOCK) return;
|
if (!Bangle.CLOCK) return;
|
||||||
if (Bangle.CLKINFO_FOCUS) return;
|
if (Bangle.CLKINFO_FOCUS) return;
|
||||||
let R = Bangle.appRect;
|
let R = Bangle.appRect;
|
||||||
if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return;
|
if (e.x < R.x || e.x > R.x2 || e.y < R.y || e.y > R.y2 ) return;
|
||||||
qlTrace = "t"; // t=tap
|
trace = leaveTrace("t"); // t=tap
|
||||||
if (settings[qlTrace].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (settings[trace].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
Bangle.on("swipe", (lr,ud) => {
|
Bangle.on("swipe", (lr,ud) => {
|
||||||
if (!Bangle.CLOCK) return;
|
if (!Bangle.CLOCK) return;
|
||||||
if (Bangle.CLKINFO_FOCUS) return;
|
if (Bangle.CLKINFO_FOCUS) return;
|
||||||
if (lr == -1) qlTrace = "l"; // l=left,
|
if (lr == -1) trace = leaveTrace("l"); // l=left,
|
||||||
if (lr == 1) qlTrace = "r"; // r=right,
|
if (lr == 1) trace = leaveTrace("r"); // r=right,
|
||||||
if (ud == -1) qlTrace = "u"; // u=up,
|
if (ud == -1) trace = leaveTrace("u"); // u=up,
|
||||||
if (ud == 1) qlTrace = "d"; // d=down.
|
if (ud == 1) trace = leaveTrace("d"); // d=down.
|
||||||
if (lr == -1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (lr == -1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (lr == 1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (lr == 1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (ud == -1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (ud == -1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
if (ud == 1 && settings[qlTrace+"app"] && settings[qlTrace+"app"].src){ if (settings[qlTrace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[qlTrace+"app"].src)) reset(qlTrace+"app"); else load(settings[qlTrace+"app"].src); }
|
if (ud == 1 && settings[trace+"app"] && settings[trace+"app"].src){ if (settings[trace+"app"].name == "Show Launcher") Bangle.showLauncher(); else if (!storage.read(settings[trace+"app"].src)) reset(trace+"app"); else load(settings[trace+"app"].src); }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ apps.push({
|
||||||
|
|
||||||
// Add the Quick Launch extension app
|
// Add the Quick Launch extension app
|
||||||
let extension = {
|
let extension = {
|
||||||
"name": "Quick Launch Extension",
|
"name": "Extension",
|
||||||
"type": "app",
|
"type": "app",
|
||||||
"sortorder": -11,
|
"sortorder": -11,
|
||||||
"src": "quicklaunch.app.js"
|
"src": "quicklaunch.app.js"
|
||||||
|
|
@ -45,7 +45,7 @@ function save(key, value) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// If changing to extension app (from something else) add downstream settings entries.
|
// If changing to extension app (from something else) add downstream settings entries.
|
||||||
if (value.name == "Quick Launch Extension" && settings[key].name != extension.name) {
|
if (value.name == extension.name && settings[key].name != extension.name) {
|
||||||
for (let c of [path+"lapp", path+"rapp", path+"uapp", path+"dapp", path+"tapp"]) {
|
for (let c of [path+"lapp", path+"rapp", path+"uapp", path+"dapp", path+"tapp"]) {
|
||||||
settings[c] = {"name":"(none)"};
|
settings[c] = {"name":"(none)"};
|
||||||
storage.write("quicklaunch.json",settings);
|
storage.write("quicklaunch.json",settings);
|
||||||
|
|
@ -54,7 +54,7 @@ function save(key, value) {
|
||||||
|
|
||||||
// Now change the setting on the current level in the path.
|
// Now change the setting on the current level in the path.
|
||||||
settings[key] = value;
|
settings[key] = value;
|
||||||
storage.write("quicklaunch.json",settings);
|
storage.writeJSON("quicklaunch.json",settings);
|
||||||
}
|
}
|
||||||
|
|
||||||
function showMainMenu() {
|
function showMainMenu() {
|
||||||
|
|
@ -66,8 +66,15 @@ function showMainMenu() {
|
||||||
|
|
||||||
//List all selected apps
|
//List all selected apps
|
||||||
for (let key of Object.keys(settings)) {
|
for (let key of Object.keys(settings)) {
|
||||||
|
if (key == "trace") continue;
|
||||||
let keyCurrent = key;
|
let keyCurrent = key;
|
||||||
mainmenu[key+ ": "+settings[key].name] = function() {showSubMenu(keyCurrent);};
|
let entry = findPath(key).toUpperCase();
|
||||||
|
if (entry=="L") entry = "Left";
|
||||||
|
if (entry=="R") entry = "Right";
|
||||||
|
if (entry=="U") entry = "Up";
|
||||||
|
if (entry=="D") entry = "Down";
|
||||||
|
if (entry=="T") entry = "Tap";
|
||||||
|
mainmenu[entry+ ": "+settings[key].name] = function() {showSubMenu(keyCurrent);};
|
||||||
}
|
}
|
||||||
|
|
||||||
return E.showMenu(mainmenu);
|
return E.showMenu(mainmenu);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue