Is the fast switch something that needs to be implemented into the launcher?
I am using 'Desktop Launcher' and don't notice any big difference.
Yes, the launcher currently needs to load the clock app using setTimeout(eval,0,s.read(".bootcde")); and additionally it needs to undo all changes with a global impact other than Bangle.loadWidgets() to prevent memory/resource leaks. The default launcher for example does the cleanup in lines 48-50 in the returnToClock-method.
The clock needs to use Bangle.setUI and give it an options object containing a remove method to clean up everything it changed in the global scope.
If clock and launcher are implemented this way, fast switching between those works. If only one of launcher and clock use this way fast switching only works while leaving that app.
I couldn't stop myself, so here's a PR with fast switching implemented for Desktop Launcher.
© Espruino, powered by microcosm.
Report a problem