Skip to content
Merged
1 change: 1 addition & 0 deletions apps/taglaunch/ChangeLog
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@
0.05: Make the "App source not found" warning less buggy
0.06: Fixed a crash if an app has no tags (app.tags is undefined)
0.07: Clear cached app list when updating showClocks setting
0.08: Add haptic feedback option when selecting app or category in menu, increase vector size limit in settings
2 changes: 2 additions & 0 deletions apps/taglaunch/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Settings

- `Font` - The font used (`4x6`, `6x8`, `12x20`, `6x15` or `Vector`). Default `12x20`.
- `Vector Font Size` - The size of the font if `Font` is set to `Vector`. Default `10`.
- `Haptic Feedback` - Whether or not to vibrate slightly when selecting an app or category in the launcher. Default `No`.
- `Show Clocks` - If set to `No` then clocks won't appear in the app list. Default `Yes`.
- `Fullscreen` - If set to `Yes` then widgets won't be loaded. Default `No`.

Expand All @@ -28,3 +29,4 @@ Contributors

- [atjn](https://github.com/atjn)
- [BlueFox4](https://github.com/BlueFox4)
- [RKBoss6](https://github.com/RKBoss6)
30 changes: 21 additions & 9 deletions apps/taglaunch/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ let vectorval = 20;
let font = g.getFonts().includes("12x20") ? "12x20" : "6x8:2";
let settings = Object.assign({
showClocks: true,
fullscreen: false
fullscreen: false,
buzz:false
}, s.readJSON("taglaunch.json", true) || {});
if ("vectorsize" in settings)
vectorval = parseInt(settings.vectorsize);
Expand Down Expand Up @@ -108,15 +109,25 @@ let showTagMenu = (tag) => {
}
},
select : i => {
let app = appsByTag[tag][i];
if (!app) return;
if (!app.src || require("Storage").read(app.src)===undefined) {
Bangle.setUI();
E.showMessage(/*LANG*/"App Source\nNot found");
setTimeout(showMainMenu, 2000);
} else {
load(app.src);
const loadApp = () => {
let app = appsByTag[tag][i];
if (!app) return;
if (!app.src || require("Storage").read(app.src)===undefined) {
Bangle.setUI();
E.showMessage(/*LANG*/"App Source\nNot found");
setTimeout(showMainMenu, 2000);
} else {
load(app.src);
}
};
if(settings.buzz){
Bangle.buzz(25);
//let the buzz have effect
setTimeout(loadApp,27);
}else{
loadApp();
}

},
back : showMainMenu,
remove: unload
Expand All @@ -138,6 +149,7 @@ let showMainMenu = () => {
}
},
select : i => {
if(settings.buzz)Bangle.buzz(25);
let tag = tagKeys[i];
showTagMenu(tag);
},
Expand Down
4 changes: 2 additions & 2 deletions apps/taglaunch/metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
"id": "taglaunch",
"name": "Tag Launcher",
"shortName": "Taglauncher",
"version": "0.07",
"description": "Launcher that puts all applications into submenus based on their tag. With many applications installed this can result in a faster application selection than the linear access of the default launcher.",
"version": "0.08",
"description": "Launcher that puts all applications into submenus based on their tag. With many applications installed this can result in a faster application selection than the linear access from the default launcher.",
"readme": "README.md",
"icon": "app.png",
"type": "launch",
Expand Down
12 changes: 10 additions & 2 deletions apps/taglaunch/settings.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
(function(back) {
let settings = Object.assign({
showClocks: true,
fullscreen: false
fullscreen: false,
buzz:false
}, require("Storage").readJSON("taglaunch.json", true) || {});

let fonts = g.getFonts();
Expand All @@ -21,9 +22,16 @@
},
/*LANG*/"Vector Font Size": {
value: settings.vectorsize || 10,
min:10, max: 20,step:1,wrap:true,
min:10, max: 25,step:1,wrap:true,
onchange: (m) => {save("vectorsize", m)}
},
/*LANG*/"Haptic Feedback": {
value: settings.buzz == true,
onchange: (m) => {
save("buzz", m);

}
},
/*LANG*/"Show Clocks": {
value: settings.showClocks == true,
onchange: (m) => {
Expand Down