Merge branch 'release-1.5'
This commit is contained in:
commit
80ec02da0e
15 changed files with 50 additions and 30 deletions
|
|
@ -106,7 +106,7 @@ android {
|
|||
applicationId "com.mattermost.rnbeta"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 23
|
||||
versionCode 70
|
||||
versionCode 71
|
||||
versionName "1.5.0"
|
||||
multiDexEnabled true
|
||||
ndk {
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ export default class AtMention extends React.PureComponent {
|
|||
let mentionName = props.mentionName;
|
||||
|
||||
while (mentionName.length > 0) {
|
||||
if (props.usersByUsername[mentionName]) {
|
||||
if (props.usersByUsername.hasOwnProperty(mentionName)) {
|
||||
const user = props.usersByUsername[mentionName];
|
||||
return {
|
||||
username: user.username,
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
ActivityIndicator,
|
||||
TouchableOpacity,
|
||||
View,
|
||||
ViewPropTypes
|
||||
|
|
@ -30,20 +31,23 @@ export default class LoadMorePosts extends PureComponent {
|
|||
};
|
||||
|
||||
renderText(style) {
|
||||
let i18nId = 'posts_view.loadMore';
|
||||
let defaultMessage = 'Load more messages';
|
||||
|
||||
if (this.props.loading) {
|
||||
i18nId = 'mobile.loading_posts';
|
||||
defaultMessage = 'Loading messages...';
|
||||
const i18nId = 'mobile.loading_posts';
|
||||
const defaultMessage = 'Loading messages...';
|
||||
|
||||
return (
|
||||
<FormattedText
|
||||
id={i18nId}
|
||||
defaultMessage={defaultMessage}
|
||||
style={style.text}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<FormattedText
|
||||
id={i18nId}
|
||||
defaultMessage={defaultMessage}
|
||||
style={style.text}
|
||||
/>
|
||||
<View style={{flex: 1, alignItems: 'center'}}>
|
||||
<ActivityIndicator/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import React, {PureComponent} from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
InteractionManager,
|
||||
Platform,
|
||||
StyleSheet,
|
||||
FlatList
|
||||
} from 'react-native';
|
||||
|
|
@ -238,7 +239,7 @@ export default class PostList extends PureComponent {
|
|||
keyExtractor={this.keyExtractor}
|
||||
ListFooterComponent={this.renderFooter}
|
||||
onEndReached={loadMore}
|
||||
onEndReachedThreshold={0}
|
||||
onEndReachedThreshold={Platform.OS === 'ios' ? 0 : 1}
|
||||
{...refreshControl}
|
||||
renderItem={this.renderItem}
|
||||
contentContainerStyle={styles.postListContent}
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import {
|
|||
ActivityIndicator,
|
||||
Alert,
|
||||
Platform,
|
||||
ScrollView,
|
||||
Text,
|
||||
View
|
||||
} from 'react-native';
|
||||
|
|
@ -120,7 +121,10 @@ class AdvancedSettings extends PureComponent {
|
|||
return (
|
||||
<View style={style.container}>
|
||||
<StatusBar/>
|
||||
<View style={style.wrapper}>
|
||||
<ScrollView
|
||||
contentContainerStyle={style.wrapper}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
<View style={style.divider}/>
|
||||
<SettingsItem
|
||||
defaultMessage='Reset Cache'
|
||||
|
|
@ -145,7 +149,7 @@ class AdvancedSettings extends PureComponent {
|
|||
theme={theme}
|
||||
/>
|
||||
<View style={style.divider}/>
|
||||
</View>
|
||||
</ScrollView>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
@ -159,7 +163,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
|||
},
|
||||
wrapper: {
|
||||
backgroundColor: changeOpacity(theme.centerChannelColor, 0.06),
|
||||
flex: 1,
|
||||
...Platform.select({
|
||||
ios: {
|
||||
paddingTop: 35
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import {
|
|||
InteractionManager,
|
||||
Linking,
|
||||
Platform,
|
||||
ScrollView,
|
||||
View
|
||||
} from 'react-native';
|
||||
import DeviceInfo from 'react-native-device-info';
|
||||
|
|
@ -214,7 +215,10 @@ class Settings extends PureComponent {
|
|||
return (
|
||||
<View style={style.container}>
|
||||
<StatusBar/>
|
||||
<View style={style.wrapper}>
|
||||
<ScrollView
|
||||
alwaysBounceVertical={false}
|
||||
contentContainerStyle={style.wrapper}
|
||||
>
|
||||
<View style={style.divider}/>
|
||||
<SettingsItem
|
||||
defaultMessage='Notifications'
|
||||
|
|
@ -301,7 +305,7 @@ class Settings extends PureComponent {
|
|||
/>
|
||||
<View style={style.divider}/>
|
||||
</View>
|
||||
</View>
|
||||
</ScrollView>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
@ -315,7 +319,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
|||
},
|
||||
wrapper: {
|
||||
backgroundColor: changeOpacity(theme.centerChannelColor, 0.06),
|
||||
flex: 1,
|
||||
...Platform.select({
|
||||
ios: {
|
||||
paddingTop: 35
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import {
|
|||
Alert,
|
||||
Modal,
|
||||
Platform,
|
||||
ScrollView,
|
||||
TouchableOpacity,
|
||||
View
|
||||
} from 'react-native';
|
||||
|
|
@ -341,7 +342,10 @@ class NotificationSettings extends PureComponent {
|
|||
return (
|
||||
<View style={style.container}>
|
||||
<StatusBar/>
|
||||
<View style={style.wrapper}>
|
||||
<ScrollView
|
||||
contentContainerStyle={style.wrapper}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
<View style={style.divider}/>
|
||||
<SettingsItem
|
||||
defaultMessage='Mentions and Replies'
|
||||
|
|
@ -374,7 +378,7 @@ class NotificationSettings extends PureComponent {
|
|||
theme={theme}
|
||||
/>
|
||||
<View style={style.divider}/>
|
||||
</View>
|
||||
</ScrollView>
|
||||
{this.renderEmailNotificationSettings(style)}
|
||||
</View>
|
||||
);
|
||||
|
|
@ -389,7 +393,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
|||
},
|
||||
wrapper: {
|
||||
backgroundColor: changeOpacity(theme.centerChannelColor, 0.06),
|
||||
flex: 1,
|
||||
...Platform.select({
|
||||
ios: {
|
||||
paddingTop: 35
|
||||
|
|
|
|||
|
|
@ -212,6 +212,7 @@ export default class NotificationSettingsEmail extends PureComponent {
|
|||
<ScrollView
|
||||
style={style.scrollView}
|
||||
contentContainerStyle={style.scrollViewContent}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
{this.renderEmailSection()}
|
||||
</ScrollView>
|
||||
|
|
|
|||
|
|
@ -199,6 +199,7 @@ class NotificationSettingsMentionsIos extends NotificationSettingsMentionsBase {
|
|||
<ScrollView
|
||||
style={style.scrollView}
|
||||
contentContainerStyle={style.scrollViewContent}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
{this.renderMentionSection(style)}
|
||||
{this.renderReplySection(style)}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
// See License.txt for license information.
|
||||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {View} from 'react-native';
|
||||
import {ScrollView, View} from 'react-native';
|
||||
|
||||
import FormattedText from 'app/components/formatted_text';
|
||||
import StatusBar from 'app/components/status_bar';
|
||||
|
|
@ -68,7 +68,10 @@ export default class NotificationSettingsMentionsKeywords extends PureComponent
|
|||
return (
|
||||
<View style={style.container}>
|
||||
<StatusBar/>
|
||||
<View style={style.wrapper}>
|
||||
<ScrollView
|
||||
contentContainerStyle={style.wrapper}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
<View style={style.inputContainer}>
|
||||
<TextInputWithLocalizedPlaceholder
|
||||
autoFocus={true}
|
||||
|
|
@ -93,7 +96,7 @@ export default class NotificationSettingsMentionsKeywords extends PureComponent
|
|||
style={style.help}
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
</ScrollView>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
@ -106,7 +109,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
|||
backgroundColor: theme.centerChannelBg
|
||||
},
|
||||
wrapper: {
|
||||
flex: 1,
|
||||
backgroundColor: changeOpacity(theme.centerChannelColor, 0.06),
|
||||
paddingTop: 35
|
||||
},
|
||||
|
|
|
|||
|
|
@ -639,6 +639,7 @@ class NotificationSettingsMobileAndroid extends NotificationSettingsMobileBase {
|
|||
<ScrollView
|
||||
style={style.scrollView}
|
||||
contentContainerStyle={style.scrollViewContent}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
{this.renderMobilePushSection()}
|
||||
<View style={style.separator}/>
|
||||
|
|
|
|||
|
|
@ -153,6 +153,7 @@ class NotificationSettingsMobileIos extends NotificationSettingsMobileBase {
|
|||
<ScrollView
|
||||
style={style.scrollView}
|
||||
contentContainerStyle={style.scrollViewContent}
|
||||
alwaysBounceVertical={false}
|
||||
>
|
||||
{this.renderMobilePushSection(style)}
|
||||
{this.renderMobilePushStatusSection(style)}
|
||||
|
|
|
|||
|
|
@ -2113,7 +2113,7 @@
|
|||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 70;
|
||||
CURRENT_PROJECT_VERSION = 71;
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||
ENABLE_BITCODE = NO;
|
||||
|
|
@ -2163,7 +2163,7 @@
|
|||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 70;
|
||||
CURRENT_PROJECT_VERSION = 71;
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||
ENABLE_BITCODE = NO;
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
</dict>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>70</string>
|
||||
<string>71</string>
|
||||
<key>ITSAppUsesNonExemptEncryption</key>
|
||||
<false/>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
|
|
|
|||
|
|
@ -19,6 +19,6 @@
|
|||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>70</string>
|
||||
<string>71</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
|||
Loading…
Reference in a new issue