diff --git a/Examples/simple-fcm-client/app/App.js b/Examples/simple-fcm-client/app/App.js index b3066bb5b3f945e484237dcf7c78396a6124f023..536cf13621e0d936f0eecda180c5a4748fc2fcd8 100644 --- a/Examples/simple-fcm-client/app/App.js +++ b/Examples/simple-fcm-client/app/App.js @@ -9,7 +9,8 @@ import { StyleSheet, Text, TouchableOpacity, - View + View, + Clipboard } from 'react-native'; import PushController from "./PushController"; @@ -20,12 +21,13 @@ export default class App extends Component { super(props); this.state = { - token: "" + token: "", + tokenCopyFeedback: "" } } render() { - let { token } = this.state; + let { token, tokenCopyFeedback } = this.state; return ( @@ -36,10 +38,14 @@ export default class App extends Component { Welcome to Simple Fcm Client! - + this.setClipboardContent(this.state.token)} style={styles.instructions}> Token: {this.state.token} + + {this.state.tokenCopyFeedback} + + firebaseClient.sendNotification(token)} style={styles.button}> Send Notification @@ -54,6 +60,16 @@ export default class App extends Component { ); } + + setClipboardContent(text) { + Clipboard.setString(text); + this.setState({tokenCopyFeedback: "Token copied to clipboard."}); + setTimeout(() => {this.clearTokenCopyFeedback()}, 2000); + } + + clearTokenCopyFeedback() { + this.setState({tokenCopyFeedback: ""}); + } } const styles = StyleSheet.create({ @@ -71,7 +87,12 @@ const styles = StyleSheet.create({ instructions: { textAlign: 'center', color: '#333333', - marginBottom: 5, + marginBottom: 2, + }, + feedback: { + textAlign: 'center', + color: '#996633', + marginBottom: 3, }, button: { backgroundColor: "teal",