diff --git a/apps/dtlaunch/ChangeLog b/apps/dtlaunch/ChangeLog index 69177e716..aac1c30bd 100644 --- a/apps/dtlaunch/ChangeLog +++ b/apps/dtlaunch/ChangeLog @@ -31,4 +31,4 @@ when moving pages. Add caching for faster startups. 0.24: Add buzz-on-interaction setting 0.25: Minor code improvements 0.26: Bangle 2: Postpone loading icons that are not needed initially. -0.27: Bangle 2: Remember and present the last open page between instances of dtlaunch. +0.27: Bangle 2: Add setting to remember and present the last open page between instances of dtlaunch. diff --git a/apps/dtlaunch/app-b2.js b/apps/dtlaunch/app-b2.js index cd1901041..6f1fddce8 100644 --- a/apps/dtlaunch/app-b2.js +++ b/apps/dtlaunch/app-b2.js @@ -11,6 +11,7 @@ swipeExit: false, timeOut: "Off", interactionBuzz: false, + rememberPage: false, }, require('Storage').readJSON("dtlaunch.json", true) || {}); let s = require("Storage"); @@ -33,12 +34,17 @@ s.writeJSON("launch.cache.json", launchCache); } let apps = launchCache.apps; - let page = (global.dtlaunch&&dtlaunch.handlePagePersist()) ?? - (parseInt(s.read("dtlaunch.page")) ?? 0); + let page = 0; + let initPageAppZeroth = 0; + let initPageAppLast = 3; + if (settings.rememberPage) { + page = (global.dtlaunch&&dtlaunch.handlePagePersist()) ?? + (parseInt(s.read("dtlaunch.page")) ?? 0); + initPageAppZeroth = page*4; + initPageAppLast = (page*4+3= INIT_PAGE_APP_ZEROTH && i <= INIT_PAGE_APP_LAST) continue; + if (i >= initPageAppZeroth && i <= initPageAppLast) continue; if (apps[i].icon) apps[i].icon = s.read(apps[i].icon); // should just be a link to a memory area } diff --git a/apps/dtlaunch/settings-b2.js b/apps/dtlaunch/settings-b2.js index f6894e289..dcad03a65 100644 --- a/apps/dtlaunch/settings-b2.js +++ b/apps/dtlaunch/settings-b2.js @@ -8,6 +8,7 @@ swipeExit: false, timeOut: "Off", interactionBuzz: false, + rememberPage: false, }, require('Storage').readJSON(FILE, true) || {}); function writeSettings() { @@ -64,5 +65,12 @@ writeSettings(); } }, + /*LANG*/'Remember Page': { + value: settings.rememberPage, + onchange: v => { + settings.rememberPage = v; + writeSettings(); + } + }, }); })