diff --git a/src/App.js b/src/App.js
index baa6a0e..1a03dcd 100644
--- a/src/App.js
+++ b/src/App.js
@@ -126,15 +126,15 @@ class App extends IPCContainer {
!this.props.DismissDependencies &&
this.props.AllowMount;
- const confirmDisplay = this.createModalConditionally(this.props.DisplayConfirmYesNo, );
- const infoDisplay = this.createModalConditionally(this.props.DisplayInfo, , true);
- const rebootDisplay = this.createModalConditionally(this.props.RebootRequired, );
const configDisplay = this.createModalConditionally(showConfig, );
+ const confirmDisplay = this.createModalConditionally(this.props.DisplayConfirmYesNo, );
const dependencyDisplay = this.createModalConditionally(showDependencies, );
const downloadDisplay = this.createModalConditionally(this.props.DownloadActive, );
const errorDisplay = this.createModalConditionally(this.props.DisplayError, , true);
- const upgradeDisplay = this.createModalConditionally(showUpgrade, );
+ const infoDisplay = this.createModalConditionally(this.props.DisplayInfo, , true);
+ const rebootDisplay = this.createModalConditionally(this.props.RebootRequired, );
const selectAppPlatformDisplay = this.createModalConditionally(this.props.DisplaySelectAppPlatform, );
+ const upgradeDisplay = this.createModalConditionally(showUpgrade, );
let mainContent = [];
if (this.props.DisplaySelectAppPlatform || !this.props.AppReady) {
diff --git a/src/redux/actions/common_actions.js b/src/redux/actions/common_actions.js
index fa94d05..f1219b8 100644
--- a/src/redux/actions/common_actions.js
+++ b/src/redux/actions/common_actions.js
@@ -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
- });
- }
- }
- };
};
\ No newline at end of file
diff --git a/src/redux/actions/mount_actions.js b/src/redux/actions/mount_actions.js
index 0219cc2..90b48e6 100644
--- a/src/redux/actions/mount_actions.js
+++ b/src/redux/actions/mount_actions.js
@@ -1,7 +1,10 @@
import * as Constants from '../../constants';
import {createAction} from 'redux-starter-kit';
import {getIPCRenderer} from '../../utils';
-import {confirmYesNo, displayConfirmYesNo} from './common_actions';
+import {
+ confirmYesNo,
+ saveState
+} from './common_actions';
export const DISPLAY_CONFIGURATION = 'mounts/displayConfiguration';
export const displayConfiguration = (provider, remote) => {
@@ -31,6 +34,7 @@ const removeRemoteMount2 = provider => {
ipcRenderer.once(Constants.IPC_Remove_Remote_Mount_Reply, (_, arg) => {
if (arg.data.Success) {
dispatch(removeRemoteMount3(provider));
+ dispatch(saveState());
}
});
ipcRenderer.send(Constants.IPC_Remove_Remote_Mount, provider.substr(6));