move uri omnibar to top (#444)
This commit is contained in:
parent
b5af71d798
commit
c37a6f5c27
22 changed files with 209 additions and 172 deletions
|
@ -68,9 +68,8 @@ const discoverStack = createStackNavigator({
|
|||
screen: DiscoverPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Explore',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
})
|
||||
header: null
|
||||
}),
|
||||
},
|
||||
File: {
|
||||
screen: FilePage,
|
||||
|
@ -81,18 +80,19 @@ const discoverStack = createStackNavigator({
|
|||
Search: {
|
||||
screen: SearchPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
}
|
||||
}, {
|
||||
headerMode: 'screen'
|
||||
headerMode: 'screen',
|
||||
transitionConfig: () => ({ screenInterpolator: () => null }),
|
||||
});
|
||||
|
||||
discoverStack.navigationOptions = ({ navigation }) => {
|
||||
let drawerLockMode = 'unlocked';
|
||||
if (navigation.state.index > 0) {
|
||||
/*if (navigation.state.index > 0) {
|
||||
drawerLockMode = 'locked-closed';
|
||||
}
|
||||
}*/
|
||||
|
||||
return {
|
||||
drawerLockMode
|
||||
|
@ -104,8 +104,7 @@ const trendingStack = createStackNavigator({
|
|||
screen: TrendingPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Trending',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
}
|
||||
});
|
||||
|
@ -115,8 +114,7 @@ const myLbryStack = createStackNavigator({
|
|||
screen: DownloadsPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Downloads',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
}
|
||||
});
|
||||
|
@ -126,8 +124,7 @@ const mySubscriptionsStack = createStackNavigator({
|
|||
screen: SubscriptionsPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Subscriptions',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
}
|
||||
});
|
||||
|
@ -137,8 +134,7 @@ const rewardsStack = createStackNavigator({
|
|||
screen: RewardsPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Rewards',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
}
|
||||
});
|
||||
|
@ -148,20 +144,19 @@ const walletStack = createStackNavigator({
|
|||
screen: WalletPage,
|
||||
navigationOptions: ({ navigation }) => ({
|
||||
title: 'Wallet',
|
||||
headerLeft: menuNavigationButton(navigation),
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
})
|
||||
},
|
||||
TransactionHistory: {
|
||||
screen: TransactionHistoryPage,
|
||||
navigationOptions: {
|
||||
title: 'Transaction History',
|
||||
drawerLockMode: 'locked-closed',
|
||||
headerTitleStyle: discoverStyle.titleText
|
||||
header: null
|
||||
}
|
||||
}
|
||||
}, {
|
||||
headerMode: 'screen'
|
||||
headerMode: 'screen',
|
||||
transitionConfig: () => ({ screenInterpolator: () => null }),
|
||||
});
|
||||
|
||||
const drawer = createDrawerNavigator({
|
||||
|
|
|
@ -2,9 +2,11 @@
|
|||
import React from 'react';
|
||||
import { SEARCH_TYPES, isNameValid, isURIValid, normalizeURI } from 'lbry-redux';
|
||||
import { FlatList, Keyboard, TextInput, View } from 'react-native';
|
||||
import { navigateToUri } from '../../utils/helper';
|
||||
import { navigateToUri } from 'utils/helper';
|
||||
import UriBarItem from './internal/uri-bar-item';
|
||||
import uriBarStyle from '../../styles/uriBar';
|
||||
import NavigationButton from 'component/navigationButton';
|
||||
import discoverStyle from 'styles/discover';
|
||||
import uriBarStyle from 'styles/uriBar';
|
||||
|
||||
class UriBar extends React.PureComponent {
|
||||
static INPUT_TIMEOUT = 500;
|
||||
|
@ -93,17 +95,13 @@ class UriBar extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={style}>
|
||||
{this.state.focused && (
|
||||
<View style={uriBarStyle.suggestions}>
|
||||
<FlatList style={uriBarStyle.suggestionList}
|
||||
data={suggestions}
|
||||
keyboardShouldPersistTaps={'handled'}
|
||||
keyExtractor={(item, value) => item.value}
|
||||
renderItem={({item}) => <UriBarItem item={item}
|
||||
navigation={navigation}
|
||||
onPress={() => this.handleItemPress(item)} />} />
|
||||
</View>)}
|
||||
<View style={uriBarStyle.uriContainer}>
|
||||
<NavigationButton
|
||||
name="bars"
|
||||
size={24}
|
||||
style={uriBarStyle.drawerMenuButton}
|
||||
iconStyle={discoverStyle.drawerHamburger}
|
||||
onPress={() => navigation.openDrawer() } />
|
||||
<TextInput ref={(ref) => { this.textInput = ref }}
|
||||
style={uriBarStyle.uriText}
|
||||
onLayout={() => { this.setSelection(); }}
|
||||
|
@ -143,6 +141,19 @@ class UriBar extends React.PureComponent {
|
|||
}
|
||||
}}/>
|
||||
</View>
|
||||
{this.state.focused && (
|
||||
<View style={uriBarStyle.suggestions}>
|
||||
<FlatList style={uriBarStyle.suggestionList}
|
||||
data={suggestions}
|
||||
keyboardShouldPersistTaps={'handled'}
|
||||
keyExtractor={(item, value) => item.value}
|
||||
renderItem={({item}) => (
|
||||
<UriBarItem
|
||||
item={item}
|
||||
navigation={navigation}
|
||||
onPress={() => this.handleItemPress(item)}
|
||||
/>)} />
|
||||
</View>)}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -158,6 +158,7 @@ class DiscoverPage extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={discoverStyle.container}>
|
||||
<UriBar navigation={navigation} />
|
||||
<RewardSummary navigation={navigation} />
|
||||
{!hasContent && fetchingFeaturedUris && (
|
||||
<View style={discoverStyle.busyContainer}>
|
||||
|
@ -186,7 +187,6 @@ class DiscoverPage extends React.PureComponent {
|
|||
/>)
|
||||
}
|
||||
<FloatingWalletBalance navigation={navigation} />
|
||||
<UriBar navigation={navigation} />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ class DownloadsPage extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={downloadsStyle.container}>
|
||||
<UriBar navigation={navigation} />
|
||||
{!fetching && !hasDownloads &&
|
||||
<View style={downloadsStyle.busyContainer}>
|
||||
<Text style={downloadsStyle.noDownloadsText}>You have not downloaded anything from LBRY yet.</Text>
|
||||
|
@ -69,7 +70,6 @@ class DownloadsPage extends React.PureComponent {
|
|||
/>
|
||||
</View>}
|
||||
<FloatingWalletBalance navigation={navigation} />
|
||||
<UriBar navigation={navigation} />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -480,6 +480,7 @@ class FilePage extends React.PureComponent {
|
|||
|
||||
innerContent = (
|
||||
<View style={filePageStyle.pageContainer}>
|
||||
{!this.state.fullscreenMode && <UriBar value={uri} navigation={navigation} />}
|
||||
{this.state.showWebView && isWebViewable && <WebView source={{ uri: localFileUri }}
|
||||
style={filePageStyle.viewer} />}
|
||||
|
||||
|
@ -624,7 +625,6 @@ class FilePage extends React.PureComponent {
|
|||
</View>
|
||||
)}
|
||||
{!this.state.fullscreenMode && <FloatingWalletBalance navigation={navigation} />}
|
||||
{!this.state.fullscreenMode && <UriBar value={uri} navigation={navigation} />}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -7,14 +7,15 @@ import {
|
|||
Text,
|
||||
View
|
||||
} from 'react-native';
|
||||
import Colors from '../../styles/colors';
|
||||
import Link from '../../component/link';
|
||||
import CustomRewardCard from '../../component/customRewardCard';
|
||||
import PhoneNumberRewardSubcard from '../../component/phoneNumberRewardSubcard';
|
||||
import EmailRewardSubcard from '../../component/emailRewardSubcard';
|
||||
import PageHeader from '../../component/pageHeader';
|
||||
import RewardCard from '../../component/rewardCard';
|
||||
import rewardStyle from '../../styles/reward';
|
||||
import Colors from 'styles/colors';
|
||||
import Link from 'component/link';
|
||||
import CustomRewardCard from 'component/customRewardCard';
|
||||
import PhoneNumberRewardSubcard from 'component/phoneNumberRewardSubcard';
|
||||
import EmailRewardSubcard from 'component/emailRewardSubcard';
|
||||
import PageHeader from 'component/pageHeader';
|
||||
import RewardCard from 'component/rewardCard';
|
||||
import UriBar from 'component/uriBar';
|
||||
import rewardStyle from 'styles/reward';
|
||||
|
||||
class RewardsPage extends React.PureComponent {
|
||||
state = {
|
||||
|
@ -134,10 +135,11 @@ class RewardsPage extends React.PureComponent {
|
|||
}
|
||||
|
||||
render() {
|
||||
const { user } = this.props;
|
||||
const { user, navigation } = this.props;
|
||||
|
||||
return (
|
||||
<View style={rewardStyle.container}>
|
||||
<UriBar navigation={navigation} />
|
||||
<ScrollView
|
||||
keyboardShouldPersistTaps={'handled'}
|
||||
style={rewardStyle.scrollContainer}
|
||||
|
|
|
@ -39,6 +39,9 @@ class SearchPage extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={searchStyle.container}>
|
||||
<UriBar value={searchQuery}
|
||||
navigation={navigation}
|
||||
onSearchSubmitted={(keywords) => search(keywords)} />
|
||||
{!isSearching && (!uris || uris.length === 0) &&
|
||||
<Text style={searchStyle.noResultsText}>No results to display.</Text>}
|
||||
<ScrollView style={searchStyle.scrollContainer} contentContainerStyle={searchStyle.scrollPadding}>
|
||||
|
@ -52,9 +55,6 @@ class SearchPage extends React.PureComponent {
|
|||
</ScrollView>
|
||||
{isSearching && <ActivityIndicator size="large" color={Colors.LbryGreen} style={searchStyle.loading} /> }
|
||||
<FloatingWalletBalance navigation={navigation} />
|
||||
<UriBar value={searchQuery}
|
||||
navigation={navigation}
|
||||
onSearchSubmitted={(keywords) => search(keywords)} />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -67,90 +67,91 @@ class SubscriptionsPage extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={subscriptionsStyle.container}>
|
||||
<UriBar navigation={navigation} />
|
||||
|
||||
{hasSubscriptions && !loading &&
|
||||
<View style={subscriptionsStyle.viewModeRow}>
|
||||
<Link
|
||||
text={'All Subscriptions'}
|
||||
style={[subscriptionsStyle.viewModeLink,
|
||||
((viewMode === Constants.SUBSCRIPTIONS_VIEW_ALL) ? subscriptionsStyle.activeMode : subscriptionsStyle.inactiveMode)]}
|
||||
onPress={() => this.changeViewMode(Constants.SUBSCRIPTIONS_VIEW_ALL)}
|
||||
/>
|
||||
<Link
|
||||
text={'Latest Only'}
|
||||
style={[subscriptionsStyle.viewModeLink,
|
||||
((viewMode === Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST) ? subscriptionsStyle.activeMode : subscriptionsStyle.inactiveMode)]}
|
||||
onPress={() => this.changeViewMode(Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST)}
|
||||
/>
|
||||
</View>}
|
||||
|
||||
{(hasSubscriptions && !loading) &&
|
||||
<View style={subscriptionsStyle.container}>
|
||||
{(viewMode === Constants.SUBSCRIPTIONS_VIEW_ALL) &&
|
||||
<FlatList
|
||||
style={subscriptionsStyle.scrollContainer}
|
||||
contentContainerStyle={subscriptionsStyle.scrollPadding}
|
||||
renderItem={ ({item}) => (
|
||||
<FileItem
|
||||
style={subscriptionsStyle.fileItem}
|
||||
mediaStyle={discoverStyle.fileItemMedia}
|
||||
key={item}
|
||||
uri={uriFromFileInfo(item)}
|
||||
navigation={navigation}
|
||||
compactView={false}
|
||||
showDetails={true} />
|
||||
)
|
||||
}
|
||||
data={allSubscriptions.sort((a, b) => {
|
||||
return b.height - a.height;
|
||||
})}
|
||||
keyExtractor={(item, index) => uriFromFileInfo(item)} />}
|
||||
|
||||
{(viewMode === Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST) &&
|
||||
<View style={subscriptionsStyle.container}>
|
||||
{unreadSubscriptions.length ?
|
||||
(<ScrollView
|
||||
style={subscriptionsStyle.scrollContainer}
|
||||
contentContainerStyle={subscriptionsStyle.scrollPadding}>
|
||||
{unreadSubscriptions.map(({ channel, uris }) => {
|
||||
const { claimName } = parseURI(channel);
|
||||
return uris.map(uri => (
|
||||
<FileItem
|
||||
style={subscriptionsStyle.fileItem}
|
||||
mediaStyle={discoverStyle.fileItemMedia}
|
||||
key={uri}
|
||||
uri={uri}
|
||||
navigation={navigation}
|
||||
compactView={false}
|
||||
showDetails={true} />));
|
||||
})}
|
||||
</ScrollView>) :
|
||||
(<View style={subscriptionsStyle.contentContainer}>
|
||||
<Text style={subscriptionsStyle.contentText}>All caught up! You might like the channels below.</Text>
|
||||
<SuggestedSubscriptions navigation={navigation} />
|
||||
</View>)
|
||||
}
|
||||
{hasSubscriptions && !loading &&
|
||||
<View style={subscriptionsStyle.viewModeRow}>
|
||||
<Link
|
||||
text={'All Subscriptions'}
|
||||
style={[subscriptionsStyle.viewModeLink,
|
||||
((viewMode === Constants.SUBSCRIPTIONS_VIEW_ALL) ? subscriptionsStyle.activeMode : subscriptionsStyle.inactiveMode)]}
|
||||
onPress={() => this.changeViewMode(Constants.SUBSCRIPTIONS_VIEW_ALL)}
|
||||
/>
|
||||
<Link
|
||||
text={'Latest Only'}
|
||||
style={[subscriptionsStyle.viewModeLink,
|
||||
((viewMode === Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST) ? subscriptionsStyle.activeMode : subscriptionsStyle.inactiveMode)]}
|
||||
onPress={() => this.changeViewMode(Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST)}
|
||||
/>
|
||||
</View>}
|
||||
|
||||
</View>}
|
||||
{(hasSubscriptions && !loading) &&
|
||||
<View style={subscriptionsStyle.subContainer}>
|
||||
<UriBar navigation={navigation} />
|
||||
{(viewMode === Constants.SUBSCRIPTIONS_VIEW_ALL) &&
|
||||
<FlatList
|
||||
style={subscriptionsStyle.scrollContainer}
|
||||
contentContainerStyle={subscriptionsStyle.scrollPadding}
|
||||
renderItem={ ({item}) => (
|
||||
<FileItem
|
||||
style={subscriptionsStyle.fileItem}
|
||||
mediaStyle={discoverStyle.fileItemMedia}
|
||||
key={item}
|
||||
uri={uriFromFileInfo(item)}
|
||||
navigation={navigation}
|
||||
compactView={false}
|
||||
showDetails={true} />
|
||||
)
|
||||
}
|
||||
data={allSubscriptions.sort((a, b) => {
|
||||
return b.height - a.height;
|
||||
})}
|
||||
keyExtractor={(item, index) => uriFromFileInfo(item)} />}
|
||||
|
||||
{(hasSubscriptions && loading) &&
|
||||
<View style={subscriptionsStyle.busyContainer}>
|
||||
<ActivityIndicator size="large" color={Colors.LbryGreen} style={subscriptionsStyle.loading} />
|
||||
</View>
|
||||
}
|
||||
{(viewMode === Constants.SUBSCRIPTIONS_VIEW_LATEST_FIRST) &&
|
||||
<View style={subscriptionsStyle.subContainer}>
|
||||
{unreadSubscriptions.length ?
|
||||
(<ScrollView
|
||||
style={subscriptionsStyle.scrollContainer}
|
||||
contentContainerStyle={subscriptionsStyle.scrollPadding}>
|
||||
{unreadSubscriptions.map(({ channel, uris }) => {
|
||||
const { claimName } = parseURI(channel);
|
||||
return uris.map(uri => (
|
||||
<FileItem
|
||||
style={subscriptionsStyle.fileItem}
|
||||
mediaStyle={discoverStyle.fileItemMedia}
|
||||
key={uri}
|
||||
uri={uri}
|
||||
navigation={navigation}
|
||||
compactView={false}
|
||||
showDetails={true} />));
|
||||
})}
|
||||
</ScrollView>) :
|
||||
(<View style={subscriptionsStyle.contentContainer}>
|
||||
<Text style={subscriptionsStyle.contentText}>All caught up! You might like the channels below.</Text>
|
||||
<SuggestedSubscriptions navigation={navigation} />
|
||||
</View>)
|
||||
}
|
||||
</View>}
|
||||
|
||||
{(!hasSubscriptions && !loading) &&
|
||||
<View style={subscriptionsStyle.container}>
|
||||
<Text style={subscriptionsStyle.infoText}>
|
||||
You are not subscribed to any channels at the moment. Here are some channels that we think you might enjoy.
|
||||
</Text>
|
||||
{loadingSuggested && <ActivityIndicator size="large" colors={Colors.LbryGreen} style={subscriptionsStyle.loading} />}
|
||||
{!loadingSuggested && <SuggestedSubscriptions navigation={navigation} />}
|
||||
</View>}
|
||||
|
||||
{(hasSubscriptions && loading) &&
|
||||
<View style={subscriptionsStyle.busyContainer}>
|
||||
<ActivityIndicator size="large" color={Colors.LbryGreen} style={subscriptionsStyle.loading} />
|
||||
</View>
|
||||
}
|
||||
|
||||
{(!hasSubscriptions && !loading) &&
|
||||
<View style={subscriptionsStyle.subContainer}>
|
||||
<Text style={subscriptionsStyle.infoText}>
|
||||
You are not subscribed to any channels at the moment. Here are some channels that we think you might enjoy.
|
||||
</Text>
|
||||
{loadingSuggested && <ActivityIndicator size="large" colors={Colors.LbryGreen} style={subscriptionsStyle.loading} />}
|
||||
{!loadingSuggested && <SuggestedSubscriptions navigation={navigation} />}
|
||||
</View>}
|
||||
|
||||
<FloatingWalletBalance navigation={navigation} />
|
||||
<UriBar navigation={navigation} />
|
||||
</View>
|
||||
)
|
||||
}
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
import React from 'react';
|
||||
import { View, ScrollView, Text } from 'react-native';
|
||||
import TransactionList from '../../component/transactionList';
|
||||
import walletStyle from '../../styles/wallet';
|
||||
import TransactionList from 'component/transactionList';
|
||||
import UriBar from 'component/uriBar';
|
||||
import walletStyle from 'styles/wallet';
|
||||
|
||||
class TransactionHistoryPage extends React.PureComponent {
|
||||
componentWillMount() {
|
||||
|
@ -16,19 +17,22 @@ class TransactionHistoryPage extends React.PureComponent {
|
|||
const { fetchingTransactions, transactions, navigation } = this.props;
|
||||
|
||||
return (
|
||||
<ScrollView>
|
||||
<View style={walletStyle.historyList}>
|
||||
{fetchingTransactions && !transactions.length && (
|
||||
<Text style={walletStyle.infoText}>Loading transactions...</Text>
|
||||
)}
|
||||
{!fetchingTransactions && transactions.length === 0 && (
|
||||
<Text style={walletStyle.infoText}>No transactions to list.</Text>
|
||||
)}
|
||||
{!fetchingTransactions && transactions && (transactions.length > 0) && (
|
||||
<TransactionList navigation={navigation} transactions={transactions} />
|
||||
)}
|
||||
</View>
|
||||
</ScrollView>
|
||||
<View>
|
||||
<UriBar navigation={navigation} />
|
||||
<ScrollView style={walletStyle.transactionHistoryScroll}>
|
||||
<View style={walletStyle.historyList}>
|
||||
{fetchingTransactions && !transactions.length && (
|
||||
<Text style={walletStyle.infoText}>Loading transactions...</Text>
|
||||
)}
|
||||
{!fetchingTransactions && transactions.length === 0 && (
|
||||
<Text style={walletStyle.infoText}>No transactions to list.</Text>
|
||||
)}
|
||||
{!fetchingTransactions && transactions && (transactions.length > 0) && (
|
||||
<TransactionList navigation={navigation} transactions={transactions} />
|
||||
)}
|
||||
</View>
|
||||
</ScrollView>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ class TrendingPage extends React.PureComponent {
|
|||
|
||||
return (
|
||||
<View style={discoverStyle.container}>
|
||||
<UriBar navigation={navigation} />
|
||||
{!hasContent && fetchingTrendingUris && (
|
||||
<View style={discoverStyle.busyContainer}>
|
||||
<ActivityIndicator size="large" color={Colors.LbryGreen} />
|
||||
|
@ -54,7 +55,6 @@ class TrendingPage extends React.PureComponent {
|
|||
/>
|
||||
}
|
||||
<FloatingWalletBalance navigation={navigation} />
|
||||
<UriBar navigation={navigation} />
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -5,7 +5,8 @@ import WalletAddress from 'component/walletAddress';
|
|||
import WalletBalance from 'component/walletBalance';
|
||||
import WalletSend from 'component/walletSend';
|
||||
import Button from 'component/button';
|
||||
import Link from 'component/link'
|
||||
import Link from 'component/link';
|
||||
import UriBar from 'component/uriBar';
|
||||
import Constants from 'constants';
|
||||
import walletStyle from 'styles/wallet';
|
||||
|
||||
|
@ -15,11 +16,12 @@ class WalletPage extends React.PureComponent {
|
|||
}
|
||||
|
||||
render() {
|
||||
const { understandsRisks, setClientSetting } = this.props;
|
||||
const { understandsRisks, setClientSetting, navigation } = this.props;
|
||||
|
||||
if (!understandsRisks) {
|
||||
return (
|
||||
<View>
|
||||
<UriBar navigation={navigation} />
|
||||
<View style={walletStyle.warning}>
|
||||
<Text style={walletStyle.warningText}>
|
||||
This is beta software. You may lose any LBC that you send to your wallet due to uninstallation, software bugs, deleted files, or malicious third-party software. You should not use this wallet as your primary wallet. If you understand the risks and you wish to continue, please tap the button below.
|
||||
|
@ -32,18 +34,21 @@ class WalletPage extends React.PureComponent {
|
|||
}
|
||||
|
||||
return (
|
||||
<ScrollView keyboardShouldPersistTaps={'handled'}>
|
||||
<View style={walletStyle.warningCard}>
|
||||
<Text style={walletStyle.warningText}>
|
||||
Please backup your wallet file using the instructions at <Link style={walletStyle.warningText} text="https://lbry.io/faq/how-to-backup-wallet#android" href="https://lbry.io/faq/how-to-backup-wallet#android" />.
|
||||
</Text>
|
||||
</View>
|
||||
<View>
|
||||
<UriBar navigation={navigation} />
|
||||
<ScrollView keyboardShouldPersistTaps={'handled'}>
|
||||
<View style={walletStyle.warningCard}>
|
||||
<Text style={walletStyle.warningText}>
|
||||
Please backup your wallet file using the instructions at <Link style={walletStyle.warningText} text="https://lbry.io/faq/how-to-backup-wallet#android" href="https://lbry.io/faq/how-to-backup-wallet#android" />.
|
||||
</Text>
|
||||
</View>
|
||||
|
||||
<WalletBalance />
|
||||
<WalletAddress />
|
||||
<WalletSend />
|
||||
<TransactionListRecent navigation={this.props.navigation} />
|
||||
</ScrollView>
|
||||
<WalletBalance />
|
||||
<WalletAddress />
|
||||
<WalletSend />
|
||||
<TransactionListRecent navigation={this.props.navigation} />
|
||||
</ScrollView>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,8 +11,7 @@ const channelPageStyle = StyleSheet.create({
|
|||
},
|
||||
fileList: {
|
||||
flex: 1,
|
||||
paddingTop: 30,
|
||||
marginBottom: 60,
|
||||
paddingTop: 30
|
||||
},
|
||||
fileListContent: {
|
||||
paddingBottom: 16
|
||||
|
|
|
@ -18,12 +18,12 @@ const discoverStyle = StyleSheet.create({
|
|||
},
|
||||
scrollContainer: {
|
||||
flex: 1,
|
||||
marginBottom: 60,
|
||||
marginTop: 60,
|
||||
paddingTop: 12
|
||||
},
|
||||
trendingContainer: {
|
||||
flex: 1,
|
||||
marginBottom: 60,
|
||||
marginTop: 60,
|
||||
paddingTop: 30
|
||||
},
|
||||
busyContainer: {
|
||||
|
|
|
@ -11,7 +11,8 @@ const downloadsStyle = StyleSheet.create({
|
|||
flexDirection: 'row'
|
||||
},
|
||||
subContainer: {
|
||||
flex: 1
|
||||
flex: 1,
|
||||
marginTop: 60
|
||||
},
|
||||
itemList: {
|
||||
flex: 1,
|
||||
|
|
|
@ -22,8 +22,7 @@ const filePageStyle = StyleSheet.create({
|
|||
marginBottom: 20
|
||||
},
|
||||
innerPageContainer: {
|
||||
flex: 1,
|
||||
marginBottom: 60
|
||||
flex: 1
|
||||
},
|
||||
innerPageContainerFsMode: {
|
||||
flex: 1,
|
||||
|
@ -32,7 +31,8 @@ const filePageStyle = StyleSheet.create({
|
|||
mediaContainer: {
|
||||
alignItems: 'center',
|
||||
width: screenWidth,
|
||||
height: containedMediaHeightWithControls
|
||||
height: containedMediaHeightWithControls,
|
||||
marginTop: 60
|
||||
},
|
||||
emptyClaimText: {
|
||||
fontFamily: 'Inter-UI-Regular',
|
||||
|
@ -116,10 +116,12 @@ const filePageStyle = StyleSheet.create({
|
|||
containedPlayer: {
|
||||
width: '100%',
|
||||
height: containedMediaHeightWithControls,
|
||||
top: 60
|
||||
},
|
||||
containedPlayerLandscape: {
|
||||
width: '100%',
|
||||
height: '100%'
|
||||
height: '100%',
|
||||
top: 60
|
||||
},
|
||||
fullscreenPlayer: {
|
||||
width: '100%',
|
||||
|
|
|
@ -27,7 +27,7 @@ const floatingButtonStyle = StyleSheet.create({
|
|||
},
|
||||
bottomRight: {
|
||||
right: 10,
|
||||
bottom: 70
|
||||
bottom: 10
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { Platform, StyleSheet } from 'react-native';
|
||||
|
||||
const STATUSBAR_HEIGHT = Platform.OS === 'ios' ? 20 : 0;
|
||||
const TITLE_OFFSET = Platform.OS === 'ios' ? 70 : 56;
|
||||
export const TITLE_OFFSET = Platform.OS === 'ios' ? 70 : 56;
|
||||
|
||||
let platformContainerStyles;
|
||||
if (Platform.OS === 'ios') {
|
||||
|
|
|
@ -29,6 +29,9 @@ const rewardStyle = StyleSheet.create({
|
|||
rewardsContainer: {
|
||||
flex: 1
|
||||
},
|
||||
scrollContainer: {
|
||||
marginTop: 60
|
||||
},
|
||||
scrollContentContainer: {
|
||||
paddingBottom: 16
|
||||
},
|
||||
|
|
|
@ -12,7 +12,7 @@ const searchStyle = StyleSheet.create({
|
|||
height: '100%',
|
||||
paddingLeft: 16,
|
||||
paddingRight: 16,
|
||||
marginBottom: 60
|
||||
marginTop: 60
|
||||
},
|
||||
scrollPadding: {
|
||||
paddingBottom: 16
|
||||
|
|
|
@ -11,6 +11,10 @@ const subscriptionsStyle = StyleSheet.create({
|
|||
container: {
|
||||
flex: 1,
|
||||
},
|
||||
subContainer: {
|
||||
flex: 1,
|
||||
marginTop: 60
|
||||
},
|
||||
busyContainer: {
|
||||
flex: 1,
|
||||
justifyContent: 'center',
|
||||
|
@ -19,8 +23,7 @@ const subscriptionsStyle = StyleSheet.create({
|
|||
padding: 16
|
||||
},
|
||||
scrollContainer: {
|
||||
flex: 1,
|
||||
marginBottom: 60
|
||||
flex: 1
|
||||
},
|
||||
scrollPadding: {
|
||||
paddingTop: 24
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
import { StyleSheet } from 'react-native';
|
||||
import { TITLE_OFFSET } from 'styles/pageHeader';
|
||||
import Colors from './colors';
|
||||
|
||||
const uriBarStyle = StyleSheet.create({
|
||||
uriContainer: {
|
||||
flexDirection: 'row',
|
||||
backgroundColor: Colors.White,
|
||||
padding: 8,
|
||||
alignSelf: 'flex-end',
|
||||
alignSelf: 'flex-start',
|
||||
height: 60,
|
||||
width: '100%',
|
||||
shadowColor: Colors.Black,
|
||||
|
@ -24,12 +26,12 @@ const uriBarStyle = StyleSheet.create({
|
|||
borderRadius: 4,
|
||||
fontFamily: 'Inter-UI-Regular',
|
||||
fontSize: 16,
|
||||
width: '100%'
|
||||
flex: 17
|
||||
},
|
||||
overlay: {
|
||||
position: 'absolute',
|
||||
backgroundColor: 'transparent',
|
||||
bottom: 0,
|
||||
top: 0,
|
||||
width: '100%',
|
||||
zIndex: 200,
|
||||
elevation: 16
|
||||
|
@ -51,7 +53,12 @@ const uriBarStyle = StyleSheet.create({
|
|||
fontSize: 16,
|
||||
marginLeft: 12,
|
||||
marginRight: 12
|
||||
}
|
||||
},
|
||||
drawerMenuButton: {
|
||||
height: '100%',
|
||||
justifyContent: 'center',
|
||||
flex: 3
|
||||
},
|
||||
});
|
||||
|
||||
export default uriBarStyle;
|
||||
|
|
|
@ -37,7 +37,7 @@ const walletStyle = StyleSheet.create({
|
|||
backgroundColor: Colors.Orange,
|
||||
padding: 16,
|
||||
marginLeft: 16,
|
||||
marginTop: 16,
|
||||
marginTop: 76,
|
||||
marginRight: 16
|
||||
},
|
||||
transactionsCard: {
|
||||
|
@ -132,7 +132,8 @@ const walletStyle = StyleSheet.create({
|
|||
warning: {
|
||||
backgroundColor: Colors.Orange,
|
||||
padding: 16,
|
||||
margin: 16
|
||||
margin: 16,
|
||||
marginTop: 76
|
||||
},
|
||||
warningText: {
|
||||
color: Colors.White,
|
||||
|
@ -161,6 +162,9 @@ const walletStyle = StyleSheet.create({
|
|||
},
|
||||
bottomMarginLarge: {
|
||||
marginBottom: 24
|
||||
},
|
||||
transactionHistoryScroll: {
|
||||
marginTop: 60
|
||||
}
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in a new issue