copy version number to clipboard
Summary: People often want to share Flipper's verison number in bug reports, etc. This makes it as easy as a single click to copy the version number. Reviewed By: jknoxville Differential Revision: D15516592 fbshipit-source-id: 72582e2acb23113b3a0af062a83d444031f058d6
This commit is contained in:
committed by
Facebook Github Bot
parent
e1aa6c4cd8
commit
b4f96ae5d9
@@ -59,10 +59,10 @@ exports[`Empty app state matches snapshot 1`] = `
|
|||||||
className="css-12zzrdt"
|
className="css-12zzrdt"
|
||||||
/>
|
/>
|
||||||
<span
|
<span
|
||||||
className="css-lli23c"
|
className="css-1swhxtd"
|
||||||
|
onClick={[Function]}
|
||||||
>
|
>
|
||||||
4.0.8
|
4.0.8-dev
|
||||||
-dev
|
|
||||||
</span>
|
</span>
|
||||||
<div
|
<div
|
||||||
className="css-1cecbfb"
|
className="css-1cecbfb"
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import UpdateIndicator from './UpdateIndicator.js';
|
|||||||
import config from '../fb-stubs/config.js';
|
import config from '../fb-stubs/config.js';
|
||||||
import {isAutoUpdaterEnabled} from '../utils/argvUtils.js';
|
import {isAutoUpdaterEnabled} from '../utils/argvUtils.js';
|
||||||
import isProduction from '../utils/isProduction.js';
|
import isProduction from '../utils/isProduction.js';
|
||||||
|
import {clipboard} from 'electron';
|
||||||
|
|
||||||
const AppTitleBar = styled(FlexRow)(({focused}) => ({
|
const AppTitleBar = styled(FlexRow)(({focused}) => ({
|
||||||
background: focused
|
background: focused
|
||||||
@@ -74,8 +75,34 @@ const VersionText = styled(Text)({
|
|||||||
color: colors.light50,
|
color: colors.light50,
|
||||||
marginLeft: 4,
|
marginLeft: 4,
|
||||||
marginTop: 2,
|
marginTop: 2,
|
||||||
|
cursor: 'pointer',
|
||||||
|
display: 'block',
|
||||||
|
padding: '4px 10px',
|
||||||
|
'&:hover': {
|
||||||
|
backgroundColor: `rgba(0,0,0,0.05)`,
|
||||||
|
borderRadius: '999em',
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
class Version extends Component<{children: string}, {copied: boolean}> {
|
||||||
|
state = {
|
||||||
|
copied: false,
|
||||||
|
};
|
||||||
|
_onClick = () => {
|
||||||
|
clipboard.writeText(this.props.children);
|
||||||
|
this.setState({copied: true});
|
||||||
|
setTimeout(() => this.setState({copied: false}), 1000);
|
||||||
|
};
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<VersionText onClick={this._onClick}>
|
||||||
|
{this.state.copied ? 'Copied' : this.props.children}
|
||||||
|
</VersionText>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const Importing = styled(FlexRow)({
|
const Importing = styled(FlexRow)({
|
||||||
color: colors.light50,
|
color: colors.light50,
|
||||||
alignItems: 'center',
|
alignItems: 'center',
|
||||||
@@ -95,10 +122,7 @@ class TitleBar extends Component<Props> {
|
|||||||
</Importing>
|
</Importing>
|
||||||
)}
|
)}
|
||||||
<Spacer />
|
<Spacer />
|
||||||
<VersionText>
|
<Version>{this.props.version + (isProduction() ? '' : '-dev')}</Version>
|
||||||
{this.props.version}
|
|
||||||
{isProduction() ? '' : '-dev'}
|
|
||||||
</VersionText>
|
|
||||||
|
|
||||||
{isAutoUpdaterEnabled() ? (
|
{isAutoUpdaterEnabled() ? (
|
||||||
<AutoUpdateVersion version={this.props.version} />
|
<AutoUpdateVersion version={this.props.version} />
|
||||||
|
|||||||
@@ -56,10 +56,10 @@ exports[`TitleBar is rendered 1`] = `
|
|||||||
className="css-12zzrdt"
|
className="css-12zzrdt"
|
||||||
/>
|
/>
|
||||||
<span
|
<span
|
||||||
className="css-lli23c"
|
className="css-1swhxtd"
|
||||||
|
onClick={[Function]}
|
||||||
>
|
>
|
||||||
1.0.0
|
1.0.0-dev
|
||||||
-dev
|
|
||||||
</span>
|
</span>
|
||||||
<div
|
<div
|
||||||
className="css-1cecbfb"
|
className="css-1cecbfb"
|
||||||
|
|||||||
Reference in New Issue
Block a user