diff --git a/src/App.js b/src/App.js index 77b0ae045..387b3faf8 100644 --- a/src/App.js +++ b/src/App.js @@ -15,7 +15,7 @@ import BugReporterDialog from './chrome/BugReporterDialog.js'; import ErrorBar from './chrome/ErrorBar.js'; import PluginContainer from './PluginContainer.js'; import Sheet from './chrome/Sheet.js'; -import {ipcRenderer} from 'electron'; +import {ipcRenderer, remote} from 'electron'; import PluginDebugger from './chrome/PluginDebugger.js'; import { ACTIVE_SHEET_BUG_REPORTER, @@ -27,6 +27,8 @@ import type BugReporter from './fb-stubs/BugReporter.js'; import type BaseDevice from './devices/BaseDevice.js'; import type {ActiveSheet} from './reducers/application.js'; +const version = remote.app.getVersion(); + type Props = { logger: Logger, bugReporter: BugReporter, @@ -71,7 +73,7 @@ export class App extends React.Component { render() { return ( - + {this.getSheet} {this.props.leftSidebarVisible && } diff --git a/src/__tests__/__snapshots__/App.electron.js.snap b/src/__tests__/__snapshots__/App.electron.js.snap index e7774dc23..3b86c88ac 100644 --- a/src/__tests__/__snapshots__/App.electron.js.snap +++ b/src/__tests__/__snapshots__/App.electron.js.snap @@ -58,6 +58,12 @@ exports[`Empty app state matches snapshot 1`] = `
+ + 3.0.0 + -dev +
{ +type Props = { + version: string, +}; + +export default class AutoUpdateVersion extends Component { state = { updater: 'update-not-available', }; @@ -49,7 +46,7 @@ export default class AutoUpdateVersion extends Component<{}, State> { // this will fail, if the app is not code signed try { remote.autoUpdater.setFeedURL({ - url: `${config.updateServer}?version=${version}`, + url: `${config.updateServer}?version=${this.props.version}`, }); } catch (e) { console.error(e); @@ -107,7 +104,6 @@ export default class AutoUpdateVersion extends Component<{}, State> { )} - {isProduction() && {version}} ); } diff --git a/src/chrome/TitleBar.js b/src/chrome/TitleBar.js index 6ee52560c..b6e5de3a7 100644 --- a/src/chrome/TitleBar.js +++ b/src/chrome/TitleBar.js @@ -15,6 +15,7 @@ import { Component, Spacer, styled, + Text, } from 'flipper'; import {connect} from 'react-redux'; import { @@ -28,6 +29,7 @@ import ScreenCaptureButtons from './ScreenCaptureButtons.js'; import AutoUpdateVersion from './AutoUpdateVersion.js'; import config from '../fb-stubs/config.js'; import {isAutoUpdaterEnabled} from '../utils/argvUtils.js'; +import isProduction from '../utils/isProduction.js'; const AppTitleBar = styled(FlexRow)(({focused}) => ({ background: focused @@ -57,8 +59,15 @@ type Props = {| toggleLeftSidebarVisible: (visible?: boolean) => void, toggleRightSidebarVisible: (visible?: boolean) => void, setActiveSheet: (sheet: ActiveSheet) => void, + version: string, |}; +const VersionText = styled(Text)({ + color: colors.light50, + marginLeft: 4, + marginTop: 2, +}); + class TitleBar extends Component { render() { return ( @@ -66,7 +75,13 @@ class TitleBar extends Component { - {isAutoUpdaterEnabled() ? : null} + + {this.props.version} + {isProduction() ? '' : '-dev'} + + {isAutoUpdaterEnabled() ? ( + + ) : null} {config.bugReportButtonVisible && (