From 44a94c80587851e9825d35f91fe10c7805310e5a Mon Sep 17 00:00:00 2001 From: Dimitri Gigot Date: Thu, 2 Apr 2020 18:36:19 +0000 Subject: [PATCH] App: Toucher - Touch enabled launcher --- apps.json | 13 ++++ apps/toucher/ChangeLog | 1 + apps/toucher/app.js | 150 +++++++++++++++++++++++++++++++++++++++++ apps/toucher/app.png | Bin 0 -> 899 bytes 4 files changed, 164 insertions(+) create mode 100644 apps/toucher/ChangeLog create mode 100644 apps/toucher/app.js create mode 100644 apps/toucher/app.png diff --git a/apps.json b/apps.json index b088865d2..723b7093f 100644 --- a/apps.json +++ b/apps.json @@ -973,5 +973,18 @@ "storage": [ {"name":"widhwt.wid.js","url":"widget.js"} ] + }, + { "id": "toucher", + "name": "Touch Launcher", + "shortName":"Menu", + "icon": "app.png", + "version":"0.01", + "description": "Touch enable left to right launcher.", + "tags": "tool,system,launcher", + "type":"launch", + "storage": [ + {"name":"toucher.app.js","url":"app.js"} + ], + "sortorder" : -10 } ] diff --git a/apps/toucher/ChangeLog b/apps/toucher/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/toucher/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/toucher/app.js b/apps/toucher/app.js new file mode 100644 index 000000000..abeb78092 --- /dev/null +++ b/apps/toucher/app.js @@ -0,0 +1,150 @@ +g.clear(); + +var Storage = require("Storage"); + + +function getApps(){ + return Storage.list(/\.info$/).filter(app => app.endsWith('.info')).map(app => Storage.readJSON(app,1) || { name: "DEAD: "+app.substr(1) }) + .filter(app=>app.type=="app" || app.type=="clock" || !app.type) + .sort((a,b)=>{ + var n=(0|a.sortorder)-(0|b.sortorder); + if (n) return n; // do sortorder first + if (a.nameb.name) return 1; + return 0; + }); +} + +var selected = 0; +var menuScroll = 0; +var menuShowing = false; +var apps = getApps(); +var displayBack = false; + +function prev(){ + if (selected>=0) { + selected--; + } + drawMenu(); +} + +function next() { + if (selected+1=n+menuScroll) menuScroll = 1+selected-n; + if (selectedn+menuScroll) g.fillPoly([120,239,100,219,140,219]); + else g.clearRect(100,219,140,239); + for (var i=0;iEZi8a;XNfX0KK)EG5t2&jmXSR!CR3JOvSF^w(VT@Oq6O4&}^ElAua zX|l63`{wtXcjoO3*x1-CYovub^cOBY?cfcO1>;+VoWa;>Pk;!SG_WW*Es5gZ1-`R@ z4t>oKYJ)f#xYia)IV)#&xZ*BHYck+F1K9eED0&f|F;Lm{VL;rb?(c)W{8d& zzrH4`vJJ?>K!fln4K4LjpAx19%+|UjgL{LF?3gt^suTXG8HN@KQv>tY{cLjA%Q)j? zIX0ma_G_?6n>drF(WulAaitj}A^+b$v5k$*zr})O^uogfX;+bphn_9#OZ}pdk^!&c zqrUVgUd3m%o}@|o!cmyJiIaP-*BlK-1F7-kNoN^X5h5L~tnN`_& zI3(jUhvcNZU>jbg3|-gg8hTDln@m+>N(dP^vh_T*8x8>Qb*ytvU&Y#;lz3_Z*tBLl zEghFFmS~QUfhzCr>E}|Fxr&yKOBoXz4vqjF zlzKwtw{idZM95W(Tbb#rO0Wkqaj6$F@MWZp>h=2o=nr;LTzCQiH!$$4i=w<5W87%F zs6NXOGI0OH6?#VB0k9%#HO2Wg(|z6FTj}`r1kmXWJk5wmGlUFGsuA7}JOW^&y9!O$ zkR=&S*XaHEp1^o_Mn#&D^ig6k6`9rJMEHEc@fMjg8GR Z=Px>?AD_-bQjY)t002ovPDHLkV1j2qp7Q_z literal 0 HcmV?d00001