Adds setting for direct launch of apps on touch with Bangle 2

pull/1081/head
Martin Boonk 2021-12-13 23:20:56 +01:00
parent 3cfb42456a
commit 3cb795c033
5 changed files with 52 additions and 7 deletions

View File

@ -3294,7 +3294,7 @@
{
"id": "dtlaunch",
"name": "Desktop Launcher",
"version": "0.06",
"version": "0.07",
"description": "Desktop style App Launcher with six (four for Bangle 2) apps per page - fast access if you have lots of apps installed.",
"screenshots": [{"url":"shot1.png"},{"url":"shot2.png"},{"url":"shot3.png"}],
"icon": "icon.png",
@ -3305,7 +3305,8 @@
"storage": [
{"name":"dtlaunch.app.js","url":"app-b1.js", "supports": ["BANGLEJS"]},
{"name":"dtlaunch.app.js","url":"app-b2.js", "supports": ["BANGLEJS2"]},
{"name":"dtlaunch.settings.js","url":"settings.js"},
{"name":"dtlaunch.settings.js","url":"settings-b1.js", "supports": ["BANGLEJS"]},
{"name":"dtlaunch.settings.js","url":"settings-b2.js", "supports": ["BANGLEJS2"]},
{"name":"dtlaunch.img","url":"app-icon.js","evaluate":true}
],
"data": [{"name":"dtlaunch.json"}]

View File

@ -4,3 +4,4 @@
0.04: reset to clock after 2 mins of inactivity
0.05: add Bangle 2 version
0.06: Adds settings page (hide clocks or launchers)
0.06: Adds setting for directly launching app on touch for Bangle 2

View File

@ -5,6 +5,7 @@
var settings = Object.assign({
showClocks: true,
showLaunchers: true,
direct: false,
}, require('Storage').readJSON("dtlaunch.json", true) || {});
var s = require("Storage");
@ -63,7 +64,7 @@ function drawPage(p){
}
for (var i=0;i<4;i++) {
if (!apps[p*4+i]) return i;
draw_icon(p,i,selected==i);
draw_icon(p,i,selected==i && !settings.direct);
}
g.flip();
}
@ -92,9 +93,9 @@ Bangle.on("touch",(_,p)=>{
for (i=0;i<4;i++){
if((page*4+i)<Napps){
if (isTouched(p,i)) {
draw_icon(page,i,true);
if (selected>=0) {
if (selected!=i){
draw_icon(page,i,true && !settings.direct);
if (selected>=0 || settings.direct) {
if (selected!=i && !settings.direct){
draw_icon(page,selected,false);
} else {
load(apps[page*4+i].src);

View File

@ -28,6 +28,6 @@
settings.showLaunchers = v;
writeSettings();
}
},
}
});
})

View File

@ -0,0 +1,42 @@
(function(back) {
var FILE = "dtlaunch.json";
var settings = Object.assign({
showClocks: true,
showLaunchers: true,
direct: false
}, require('Storage').readJSON(FILE, true) || {});
function writeSettings() {
require('Storage').writeJSON(FILE, settings);
}
E.showMenu({
"" : { "title" : "Desktop launcher" },
"< Back" : () => back(),
'Show clocks': {
value: settings.showClocks,
format: v => v?"On":"Off",
onchange: v => {
settings.showClocks = v;
writeSettings();
}
},
'Show launchers': {
value: settings.showLaunchers,
format: v => v?"On":"Off",
onchange: v => {
settings.showLaunchers = v;
writeSettings();
}
},
'Direct launch': {
value: settings.direct,
format: v => v?"On":"Off",
onchange: v => {
settings.direct = v;
writeSettings();
}
}
});
})