Merge pull request #1177 from BlueWallet/strg

Status bar visibility
This commit is contained in:
Overtorment 2020-06-04 19:05:55 +01:00 committed by GitHub
commit 431e3fa37d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 54 additions and 68 deletions

View file

@ -684,7 +684,6 @@ export class BlueHeader extends Component {
borderBottomColor: 'transparent',
borderBottomWidth: 0,
}}
statusBarProps={{ barStyle: 'default' }}
/>
);
}
@ -701,7 +700,6 @@ export class BlueHeaderDefaultSub extends Component {
borderBottomColor: 'transparent',
borderBottomWidth: 0,
}}
statusBarProps={{ barStyle: 'default' }}
leftComponent={
<Text
adjustsFontSizeToFit
@ -740,7 +738,6 @@ export class BlueHeaderDefaultMain extends Component {
<SafeAreaView style={{ paddingVertical: 8, paddingHorizontal: 4, backgroundColor: BlueApp.settings.brandingColor }}>
<Header
{...this.props}
statusBarProps={{ barStyle: 'default' }}
leftComponent={{
text: this.props.leftText,
style: {
@ -1812,9 +1809,7 @@ const WalletCarouselItem = ({ item, index, onPress, handleLongPress }) => {
return (
<NewWalletPanel
onPress={() => {
onPressedOut();
onPress(index);
onPressedOut();
}}
/>
);
@ -1833,9 +1828,7 @@ const WalletCarouselItem = ({ item, index, onPress, handleLongPress }) => {
onPressOut={item.getIsFailure() ? onPressedOut : null}
onPress={() => {
if (item.getIsFailure()) {
onPressedOut();
onPress(index);
onPressedOut();
}
}}
>
@ -1903,9 +1896,7 @@ const WalletCarouselItem = ({ item, index, onPress, handleLongPress }) => {
onPressOut={onPressedOut}
onLongPress={handleLongPress}
onPress={() => {
onPressedOut();
onPress(index);
onPressedOut();
}}
>
<LinearGradient

View file

@ -94,7 +94,7 @@
<key>NSCalendarsUsageDescription</key>
<string>This alert should not show up as we do not require this data</string>
<key>NSCameraUsageDescription</key>
<string>In order to quickly scan the recipient's address, we need your permission to use the camera to scan their QR Code.</string>
<string>In order to quickly scan the recipient&apos;s address, we need your permission to use the camera to scan their QR Code.</string>
<key>NSFaceIDUsageDescription</key>
<string>In order to use FaceID please confirm your permission.</string>
<key>NSLocationAlwaysUsageDescription</key>
@ -147,8 +147,6 @@
<string>UIInterfaceOrientationLandscapeRight</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
</array>
<key>UIUserInterfaceStyle</key>
<string>Light</string>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
<key>UTExportedTypeDeclarations</key>

View file

@ -557,4 +557,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: 932f5bffd3ddea34b78c9ed0921a6f8cccf442b5
COCOAPODS: 1.9.1
COCOAPODS: 1.9.3

View file

@ -159,6 +159,7 @@ const ScanQRCode = () => {
return (
<View style={styles.root}>
<StatusBar hidden />
{!isLoading && isFocused && (
<RNCamera
captureAudio={false}

View file

@ -1,7 +1,6 @@
/* global alert */
import React, { Component } from 'react';
import {
ActivityIndicator,
View,
TextInput,
Alert,
@ -14,6 +13,7 @@ import {
Dimensions,
Platform,
ScrollView,
ActivityIndicator,
Text,
} from 'react-native';
import { Icon } from 'react-native-elements';
@ -24,7 +24,6 @@ import {
BlueBitcoinAmount,
BlueAddressInput,
BlueDismissKeyboardInputAccessory,
BlueLoading,
BlueUseAllFundsButton,
BlueListItem,
BlueText,
@ -787,7 +786,7 @@ export default class SendDetails extends Component {
const isSendMaxUsed = this.state.addresses.some(element => element.amount === BitcoinUnit.MAX);
return (
<Modal
isVisible={this.state.isAdvancedTransactionOptionsVisible}
isVisible={this.state.isAdvancedTransactionOptionsVisible && !this.state.isLoading}
style={styles.bottomModal}
onBackdropPress={() => {
Keyboard.dismiss();
@ -1013,58 +1012,54 @@ export default class SendDetails extends Component {
};
render() {
if (this.state.isLoading || typeof this.state.fromWallet === 'undefined') {
return (
<View style={styles.loading}>
<BlueLoading />
</View>
);
}
const opacity = this.state.isLoading ? 0.5 : 1.0;
return (
<TouchableWithoutFeedback onPress={Keyboard.dismiss} accessible={false}>
<View style={styles.root}>
<View style={styles.root} pointerEvents={this.state.isLoading ? 'none' : 'auto'}>
<View>
<KeyboardAvoidingView behavior="position">
<ScrollView
pagingEnabled
horizontal
contentContainerStyle={styles.scrollViewContent}
ref={ref => (this.scrollView = ref)}
onContentSizeChange={() => this.scrollView.scrollToEnd()}
onLayout={() => this.scrollView.scrollToEnd()}
onMomentumScrollEnd={this.handlePageChange}
scrollEnabled={this.state.addresses.length > 1}
scrollIndicatorInsets={{ top: 0, left: 8, bottom: 0, right: 8 }}
>
{this.renderBitcoinTransactionInfoFields()}
</ScrollView>
<View hide={!this.state.showMemoRow} style={styles.memo}>
<TextInput
onChangeText={text => this.setState({ memo: text })}
placeholder={loc.send.details.note_placeholder}
value={this.state.memo}
numberOfLines={1}
style={styles.memoText}
editable={!this.state.isLoading}
onSubmitEditing={Keyboard.dismiss}
inputAccessoryViewID={BlueDismissKeyboardInputAccessory.InputAccessoryViewID}
/>
</View>
<TouchableOpacity
onPress={() => this.setState({ isFeeSelectionModalVisible: true })}
disabled={this.state.isLoading}
style={styles.fee}
>
<Text style={styles.feeLabel}>Fee</Text>
<View style={styles.feeRow}>
<Text style={styles.feeValue}>{this.state.fee}</Text>
<Text style={styles.feeUnit}>sat/b</Text>
<View style={{ opacity: opacity }}>
<KeyboardAvoidingView behavior="position">
<ScrollView
pagingEnabled
horizontal
contentContainerStyle={styles.scrollViewContent}
ref={ref => (this.scrollView = ref)}
onContentSizeChange={() => this.scrollView.scrollToEnd()}
onLayout={() => this.scrollView.scrollToEnd()}
onMomentumScrollEnd={this.handlePageChange}
scrollEnabled={this.state.addresses.length > 1}
scrollIndicatorInsets={{ top: 0, left: 8, bottom: 0, right: 8 }}
>
{this.renderBitcoinTransactionInfoFields()}
</ScrollView>
<View hide={!this.state.showMemoRow} style={styles.memo}>
<TextInput
onChangeText={text => this.setState({ memo: text })}
placeholder={loc.send.details.note_placeholder}
value={this.state.memo}
numberOfLines={1}
style={styles.memoText}
editable={!this.state.isLoading}
onSubmitEditing={Keyboard.dismiss}
inputAccessoryViewID={BlueDismissKeyboardInputAccessory.InputAccessoryViewID}
/>
</View>
</TouchableOpacity>
{this.renderCreateButton()}
{this.renderFeeSelectionModal()}
{this.renderAdvancedTransactionOptionsModal()}
</KeyboardAvoidingView>
<TouchableOpacity
onPress={() => this.setState({ isFeeSelectionModalVisible: true })}
disabled={this.state.isLoading}
style={styles.fee}
>
<Text style={styles.feeLabel}>Fee</Text>
<View style={styles.feeRow}>
<Text style={styles.feeValue}>{this.state.fee}</Text>
<Text style={styles.feeUnit}>sat/b</Text>
</View>
</TouchableOpacity>
{this.renderFeeSelectionModal()}
{this.renderAdvancedTransactionOptionsModal()}
</KeyboardAvoidingView>
</View>
{this.renderCreateButton()}
</View>
<BlueDismissKeyboardInputAccessory />
{Platform.select({

View file

@ -134,6 +134,7 @@ const styles = StyleSheet.create({
export default class TransactionsStatus extends Component {
static navigationOptions = () => ({
...BlueNavigationStyle(),
title: '',
});
constructor(props) {

View file

@ -553,7 +553,6 @@ export default class WalletsList extends Component {
};
onNavigationEventFocus = () => {
StatusBar.setBarStyle('dark-content');
this.redrawScreen();
};
@ -647,6 +646,7 @@ export default class WalletsList extends Component {
render() {
return (
<View style={styles.root}>
<StatusBar barStyle="dark-content" />
<View style={styles.walletsListWrapper}>
<SectionList
refreshControl={<RefreshControl onRefresh={this.refreshTransactions} refreshing={!this.state.isFlatListRefreshControlHidden} />}

View file

@ -226,7 +226,7 @@ export default class WalletTransactions extends Component {
};
}
async componentDidMount() {
componentDidMount() {
this._unsubscribeFocus = this.props.navigation.addListener('focus', this.onFocus);
this._unsubscribeBlur = this.props.navigation.addListener('blur', this.onBlur);
@ -234,8 +234,8 @@ export default class WalletTransactions extends Component {
this.interval = setInterval(() => {
this.setState(prev => ({ timeElapsed: prev.timeElapsed + 1 }));
}, 60000);
const isHandOffUseEnabled = await HandoffSettings.isHandoffUseEnabled();
this.setState({ isHandOffUseEnabled, isLoading: false });
HandoffSettings.isHandoffUseEnabled().then(enabled => this.setState({ isHandOffUseEnabled: enabled }));
this.setState({ isLoading: false });
}
/**