2022-11-27 13:50:22 +00:00
( function ( back ) {
var FILE = "fastload.json" ;
var settings ;
2023-03-25 12:56:53 +00:00
var isQuicklaunchPresent = ! ! require ( 'Storage' ) . read ( "quicklaunch.app.js" , 0 , 1 ) ;
2022-11-27 13:50:22 +00:00
function writeSettings ( key , value ) {
var s = require ( 'Storage' ) . readJSON ( FILE , true ) || { } ;
s [ key ] = value ;
require ( 'Storage' ) . writeJSON ( FILE , s ) ;
readSettings ( ) ;
}
function readSettings ( ) {
settings = require ( 'Storage' ) . readJSON ( FILE , true ) || { } ;
}
2023-03-25 12:56:53 +00:00
2022-11-27 13:50:22 +00:00
readSettings ( ) ;
function buildMainMenu ( ) {
2023-03-25 12:56:53 +00:00
var mainmenu = { } ;
mainmenu [ '' ] = { 'title' : 'Fastload' , back : back } ;
mainmenu [ 'Activate app history' ] = {
value : ! ! settings . useAppHistory ,
onchange : v => {
writeSettings ( "useAppHistory" , v ) ;
if ( v && settings . autoloadLauncher ) {
writeSettings ( "autoloadLauncher" , ! v ) ; // Don't use app history and load to launcher together.
setTimeout ( ( ) => E . showMenu ( buildMainMenu ( ) ) , 0 ) ; // Update the menu so it can be seen if a value was automatically set to false (app history vs load launcher).
}
}
} ;
if ( isQuicklaunchPresent ) {
mainmenu [ 'Exclude Quick Launch from history' ] = {
value : ! ! settings . disregardQuicklaunch ,
onchange : v => {
writeSettings ( "disregardQuicklaunch" , v ) ;
}
} ;
}
mainmenu [ 'Force load to launcher' ] = {
2022-11-27 13:50:22 +00:00
value : ! ! settings . autoloadLauncher ,
onchange : v => {
writeSettings ( "autoloadLauncher" , v ) ;
2023-03-25 12:56:53 +00:00
if ( v && settings . useAppHistory ) {
writeSettings ( "useAppHistory" , ! v ) ;
setTimeout ( ( ) => E . showMenu ( buildMainMenu ( ) ) , 0 ) ; // Update the menu so it can be seen if a value was automatically set to false (app history vs load launcher).
} // Don't use app history and load to launcher together.
2022-11-27 13:50:22 +00:00
}
2023-03-25 12:56:53 +00:00
} ;
2023-07-21 17:28:32 +00:00
mainmenu [ 'Hide "Fastloading..."' ] = {
value : ! ! settings . hideLoading ,
onchange : v => {
writeSettings ( "hideLoading" , v ) ;
}
} ;
mainmenu [ 'Detect settings changes' ] = {
value : ! ! settings . detectSettingsChange ,
onchange : v => {
writeSettings ( "detectSettingsChange" , v ) ;
}
} ;
2023-03-25 12:56:53 +00:00
2022-11-27 13:50:22 +00:00
return mainmenu ;
}
E . showMenu ( buildMainMenu ( ) ) ;
} )