Opt-in to auto-delete old releases

This commit is contained in:
2020-02-13 13:21:06 -06:00
parent 45e375c45e
commit 19fcf896df
2 changed files with 22 additions and 7 deletions

View File

@@ -50,6 +50,7 @@ let isShutdown = false;
let isQuiting = false;
let isInstalling = false;
let launchHidden = false;
let cleanupReleases = false;
let mainWindow;
let mainWindowTray;
let trayContextMenu;
@@ -153,6 +154,9 @@ const createWindow = () => {
},
checked: !launchHidden,
},
{
type: 'separator'
},
{
label: 'Auto-start', type: 'checkbox', click(item) {
if (item.checked) {
@@ -162,9 +166,6 @@ const createWindow = () => {
}
}
},
{
type: 'separator'
},
{
label: 'Launch Hidden', type: 'checkbox', click(item) {
launchHidden = !!item.checked;
@@ -175,6 +176,16 @@ const createWindow = () => {
{
type: 'separator'
},
{
label: 'Delete Old Releases', type: 'checkbox', click(item) {
cleanupReleases = !!item.checked;
saveUiSettings();
},
checked: cleanupReleases,
},
{
type: 'separator'
},
{
label: 'Exit and Unmount', click() {
closeApplication();
@@ -208,7 +219,8 @@ const loadUiSettings = () => {
try {
if (fs.statSync(settingFile).isFile()) {
const settings = JSON.parse(fs.readFileSync(settingFile, 'utf8'));
launchHidden = settings.launch_hidden;
launchHidden = !!settings.launch_hidden;
cleanupReleases = !!settings.cleanup_releases;
PlatformIPC.setPlatformOverride(settings.platform_override);
}
} catch (e) {
@@ -219,6 +231,7 @@ const saveUiSettings = () => {
const settingFile = path.join(helpers.getDataDirectory(), 'ui.json');
try {
fs.writeFileSync(settingFile, JSON.stringify({
cleanup_releases: cleanupReleases,
launch_hidden: launchHidden,
platform_override: PlatformIPC.getPlatformOverride(),
}), 'utf-8');
@@ -304,7 +317,7 @@ DownloadIPC.addListeners(ipcMain, standardIPCReply);
FilesystemIPC.addListeners(ipcMain, getMainWindow, dialog);
MountsIPC.addListeners(ipcMain, setTrayImage, standardIPCReply);
PlatformIPC.addListeners(ipcMain, detectScript, saveUiSettings);
ReleaseIPC.addListeners(ipcMain, standardIPCReply);
ReleaseIPC.addListeners(ipcMain, () => cleanupReleases, standardIPCReply);
StateIPC.addListeners(ipcMain);
SystemIPC.addListeners(ipcMain, closeApplication);
UpgradeIPC.addListeners(ipcMain, setIsInstalling, MountsIPC.unmountAllDrives, standardIPCReply);