From 5aa47c33c9c86c390fb7384436525c27a0001920 Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Sat, 22 Feb 2020 21:32:41 -0600 Subject: [PATCH] Release notification changes --- src/App.js | 21 ++++++++++++++++-- src/assets/images/release_available.png | Bin 71729 -> 0 bytes .../ReleaseVersionDisplay.js | 2 +- src/components/UpgradeIcon/UpgradeIcon.css | 8 +++++-- src/components/UpgradeIcon/UpgradeIcon.js | 19 +++++++++++----- src/redux/actions/install_actions.js | 8 ++++++- src/redux/actions/release_version_actions.js | 5 +++++ src/redux/reducers/release_version_reducer.js | 7 ++++++ 8 files changed, 58 insertions(+), 12 deletions(-) delete mode 100644 src/assets/images/release_available.png diff --git a/src/App.js b/src/App.js index c34ca6e..5f570a8 100644 --- a/src/App.js +++ b/src/App.js @@ -14,6 +14,10 @@ import MountItems from './containers/MountItems/MountItems'; import NewReleases from './components/NewReleases/NewReleases'; import {notifyError} from './redux/actions/error_actions'; import Reboot from './components/Reboot/Reboot'; +import { + setDismissNewReleasesAvailable, + setNewReleasesAvailable +} from './redux/actions/release_version_actions'; import ReleaseVersionDisplay from './components/ReleaseVersionDisplay/ReleaseVersionDisplay'; import { displaySelectAppPlatform, @@ -73,6 +77,15 @@ class App extends IPCContainer { this.props.VersionLookup[Constants.RELEASE_TYPES[this.props.Release]][this.props.ReleaseVersion]; }; + handleUpgradeIconClicked = () => { + if (this.props.UpgradeAvailable) { + this.props.setDismissUIUpgrade(false) + } else if (this.props.NewReleasesAvailable2.length > 0) { + this.props.setNewReleasesAvailable(this.props.NewReleasesAvailable2); + this.props.setDismissNewReleasesAvailable(false); + } + }; + render() { const selectedVersion = this.getSelectedVersion(); @@ -177,8 +190,9 @@ class App extends IPCContainer { textAlign={'center'} type={'Heading1'}/> this.props.setDismissUIUpgrade(false)} + available={this.props.UpgradeAvailable || (this.props.NewReleasesAvailable2.length > 0)} + newReleases={!this.props.UpgradeAvailable && (this.props.NewReleasesAvailable2.length > 0)} + clicked={this.handleUpgradeIconClicked} col={dimensions => dimensions.columns - 6} colSpan={5} row={1} @@ -225,6 +239,7 @@ const mapStateToProps = state => { MissingDependencies: state.install.MissingDependencies, MountsBusy: state.mounts.MountsBusy, NewReleasesAvailable: state.relver.NewReleasesAvailable, + NewReleasesAvailable2: state.relver.NewReleasesAvailable2, Platform: state.common.Platform, ProviderState: state.mounts.ProviderState, RebootRequired: state.common.RebootRequired, @@ -243,6 +258,8 @@ const mapDispatchToProps = dispatch => { loadReleases: ()=> dispatch(loadReleases()), notifyError: (msg, critical, callback) => dispatch(notifyError(msg, critical, callback)), saveState: () => dispatch(saveState()), + setDismissNewReleasesAvailable: dismiss => dispatch(setDismissNewReleasesAvailable), + setNewReleasesAvailable: items => dispatch(setNewReleasesAvailable(items)), setDismissUIUpgrade: dismiss => dispatch(setDismissUIUpgrade(dismiss)), }; }; diff --git a/src/assets/images/release_available.png b/src/assets/images/release_available.png deleted file mode 100644 index 4dbba4cd0921295d2af0638f862dcd3dad97cc7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71729 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 S7&Su^OSLrgP=$ZqdicK_9Lv4{ diff --git a/src/components/ReleaseVersionDisplay/ReleaseVersionDisplay.js b/src/components/ReleaseVersionDisplay/ReleaseVersionDisplay.js index 71dadfe..d9e8149 100644 --- a/src/components/ReleaseVersionDisplay/ReleaseVersionDisplay.js +++ b/src/components/ReleaseVersionDisplay/ReleaseVersionDisplay.js @@ -143,4 +143,4 @@ export default connect(mapStateToProps, mapDispatchToProps)(props => { {optionsDisplay} ); -}); \ No newline at end of file +}); diff --git a/src/components/UpgradeIcon/UpgradeIcon.css b/src/components/UpgradeIcon/UpgradeIcon.css index fcc9e3c..0dce756 100644 --- a/src/components/UpgradeIcon/UpgradeIcon.css +++ b/src/components/UpgradeIcon/UpgradeIcon.css @@ -17,5 +17,9 @@ max-width: 100%; max-height: 100%; box-sizing: border-box; - opacity: 0.65; - } \ No newline at end of file + color: var(--heading_text_color); +} + +.UpgradeIcon.Release { + color: var(--heading_other_text_color); +} diff --git a/src/components/UpgradeIcon/UpgradeIcon.js b/src/components/UpgradeIcon/UpgradeIcon.js index 5b3af36..3828eef 100644 --- a/src/components/UpgradeIcon/UpgradeIcon.js +++ b/src/components/UpgradeIcon/UpgradeIcon.js @@ -1,13 +1,19 @@ import React from 'react'; import './UpgradeIcon.css'; -import availableImage from '../../assets/images/release_available.png'; import ReactTooltip from 'react-tooltip'; +import {faExclamationTriangle} from '@fortawesome/free-solid-svg-icons'; +import {FontAwesomeIcon} from '@fortawesome/react-fontawesome'; export default props => { + const styles = ['UpgradeIcon']; let placement = 'left'; let toolTipText = 'UI Upgrade Available'; if (props.release) { placement='bottom'; + styles.push('Release'); + } + + if (props.release || props.newReleases) { toolTipText = 'New Release Available'; } @@ -16,13 +22,14 @@ export default props => { (

- + + +

{toolTipText}
) : null; -}; \ No newline at end of file +}; diff --git a/src/redux/actions/install_actions.js b/src/redux/actions/install_actions.js index 48700c9..68fb3df 100644 --- a/src/redux/actions/install_actions.js +++ b/src/redux/actions/install_actions.js @@ -10,7 +10,8 @@ import { loadReleases, setActiveRelease, setInstalledVersion, - setReleaseUpgradeAvailable + setReleaseUpgradeAvailable, + setNewReleasesAvailable2, } from './release_version_actions'; import { confirmYesNo, @@ -224,6 +225,11 @@ export const installRelease = source => { FilePath: source, }); + if (arg.data.Success) { + localStorage.setItem('previous_releases', localStorage.getItem('releases')); + dispatch(setNewReleasesAvailable2([])); + } + dispatch(setInstallComplete(arg.data)); dispatch(checkVersionInstalled()); }; diff --git a/src/redux/actions/release_version_actions.js b/src/redux/actions/release_version_actions.js index e570313..595826a 100644 --- a/src/redux/actions/release_version_actions.js +++ b/src/redux/actions/release_version_actions.js @@ -14,6 +14,7 @@ import { } from './install_actions'; import {unmountAll} from './mount_actions'; import { + checkNewReleases, getIPCRenderer, getNewReleases } from '../../utils'; @@ -140,8 +141,11 @@ export const loadReleases = () => { dispatch(setNewReleasesAvailable(newReleases)); if (getState().relver.NewReleasesAvailable.length > 0) { + dispatch(setNewReleasesAvailable2(newReleases)); localStorage.setItem('previous_releases', storedReleases); dispatch(showWindow()); + } else if ((newReleases = checkNewReleases()).length > 0) { + dispatch(setNewReleasesAvailable2(newReleases)); } }).catch(error => { const releases = localStorage.getItem('releases'); @@ -193,6 +197,7 @@ export const setDismissNewReleasesAvailable = createAction('relver/setDismissNew export const setDismissUIUpgrade = createAction('relver/setDismissUIUpgrade'); export const setInstalledVersion = createAction('relver/setInstalledVersion'); export const setNewReleasesAvailable = createAction('relver/setNewReleasesAvailable'); +export const setNewReleasesAvailable2 = createAction('relver/setNewReleasesAvailable2'); export const SET_RELEASE_DATA = 'relver/setReleaseData'; export const setReleaseData = (locationsLookup, versionLookup)=> { diff --git a/src/redux/reducers/release_version_reducer.js b/src/redux/reducers/release_version_reducer.js index 52066ec..5946b7e 100644 --- a/src/redux/reducers/release_version_reducer.js +++ b/src/redux/reducers/release_version_reducer.js @@ -19,6 +19,7 @@ export const releaseVersionReducer = createReducer({ InstalledVersion: 'none', LocationsLookup: {}, NewReleasesAvailable: [], + NewReleasesAvailable2: [], Release: 0, ReleaseDefault: 0, ReleaseUpgradeAvailable: false, @@ -76,6 +77,12 @@ export const releaseVersionReducer = createReducer({ NewReleasesAvailable: action.payload, }; }, + [Actions.setNewReleasesAvailable2]: (state, action) => { + return { + ...state, + NewReleasesAvailable2: action.payload, + }; + }, [Actions.SET_RELEASE_DATA]: (state, action) => { return { ...state,