Save state on remove

This commit is contained in:
2019-10-06 19:23:09 -05:00
parent aff7e8cb3a
commit a6163b0b5d
3 changed files with 55 additions and 51 deletions

View File

@@ -13,25 +13,6 @@ export const confirmYesNo = title => {
};
};
export const hideConfirmYesNo = confirmed => {
return dispatch => {
dispatch(handleConfirmYesNo(false, confirmed));
};
};
const handleConfirmYesNo = (show, titleOrConfirmed, resolve) => {
return dispatch => {
if (show) {
yesNoResolvers.push(resolve);
dispatch(displayConfirmYesNo(show, titleOrConfirmed))
} else {
yesNoResolvers[0](titleOrConfirmed);
yesNoResolvers.splice(0, 1);
dispatch(displayConfirmYesNo(false))
}
};
};
export const DISPLAY_CONFIRM_YES_NO = 'common/displayConfirmYesNo';
const displayConfirmYesNo = (show, title) => {
return {
@@ -53,6 +34,25 @@ export const displaySelectAppPlatform = display => {
};
};
export const hideConfirmYesNo = confirmed => {
return dispatch => {
dispatch(handleConfirmYesNo(false, confirmed));
};
};
const handleConfirmYesNo = (show, titleOrConfirmed, resolve) => {
return dispatch => {
if (show) {
yesNoResolvers.push(resolve);
dispatch(displayConfirmYesNo(show, titleOrConfirmed));
} else {
yesNoResolvers[0](titleOrConfirmed);
yesNoResolvers.splice(0, 1);
dispatch(displayConfirmYesNo(false));
}
};
};
export const notifyRebootRequired = createAction('common/notifyRebootRequired');
export const rebootSystem = () => {
@@ -64,6 +64,33 @@ export const rebootSystem = () => {
}
};
export const saveState = () => {
return (dispatch, getState) => {
const state = getState();
if (state.common.AppReady) {
let currentState = {
Release: state.relver.Release,
RemoteMounts: state.mounts.RemoteMounts,
Version: state.relver.Version,
};
const providerList = [
...Constants.PROVIDER_LIST,
...state.mounts.RemoteMounts,
];
for (const provider of providerList) {
currentState[provider] = state.mounts.ProviderState[provider];
}
if (ipcRenderer) {
ipcRenderer.send(Constants.IPC_Save_State, {
State: currentState
});
}
}
};
};
export const setAllowMount = createAction('common/setAllowMount');
export const setApplicationReady = createAction('common/setApplicationReady');
@@ -99,31 +126,4 @@ export const shutdownApplication = () => {
ipcRenderer.send(Constants.IPC_Shutdown);
}
};
};
export const saveState = () => {
return (dispatch, getState) => {
const state = getState();
if (state.common.AppReady) {
let currentState = {
Release: state.relver.Release,
RemoteMounts: state.mounts.RemoteMounts,
Version: state.relver.Version,
};
const providerList = [
...Constants.PROVIDER_LIST,
...state.mounts.RemoteMounts,
];
for (const provider of providerList) {
currentState[provider] = state.mounts.ProviderState[provider];
}
if (ipcRenderer) {
ipcRenderer.send(Constants.IPC_Save_State, {
State: currentState
});
}
}
};
};