From 92cedf76c131df79bbcaebc61fa7ba356a4848be Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Wed, 5 Sep 2018 15:15:03 -0300 Subject: [PATCH] [FIX] Missing current server (#427) * server.current removed * Increased area of touch on header * Hide search when sort dropdown is tapped * default server icon url * 1.1.1 --- android/app/build.gradle | 2 +- app/lib/realm.js | 3 +-- app/sagas/selectServer.js | 2 +- app/views/RoomsListView/Header/Header.ios.js | 8 ++++++-- app/views/RoomsListView/ServerDropdown.js | 12 +++++++++++- app/views/RoomsListView/index.js | 17 +++++++++++++++-- ios/RocketChatRN/Info.plist | 2 +- 7 files changed, 36 insertions(+), 10 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 22cb0ac0..c0cbdd07 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -102,7 +102,7 @@ android { minSdkVersion 19 targetSdkVersion 27 versionCode VERSIONCODE as Integer - versionName "1.1" + versionName "1.1.1" ndk { abiFilters "armeabi-v7a", "x86" } diff --git a/app/lib/realm.js b/app/lib/realm.js index e4f68f40..c97e58a9 100644 --- a/app/lib/realm.js +++ b/app/lib/realm.js @@ -10,8 +10,7 @@ const serversSchema = { properties: { id: 'string', name: { type: 'string', optional: true }, - iconURL: { type: 'string', optional: true }, - current: 'bool' + iconURL: { type: 'string', optional: true } } }; diff --git a/app/sagas/selectServer.js b/app/sagas/selectServer.js index be132c44..9101d1b6 100644 --- a/app/sagas/selectServer.js +++ b/app/sagas/selectServer.js @@ -46,7 +46,7 @@ const handleServerRequest = function* handleServerRequest({ server }) { yield call(validate, server); yield call(NavigationActions.push, { screen: 'LoginSignupView', title: server, backButtonTitle: '' }); database.databases.serversDB.write(() => { - database.databases.serversDB.create('servers', { id: server, current: false }, true); + database.databases.serversDB.create('servers', { id: server }, true); }); yield put(selectServerRequest(server)); } catch (e) { diff --git a/app/views/RoomsListView/Header/Header.ios.js b/app/views/RoomsListView/Header/Header.ios.js index c9594f0f..4ae44bc1 100644 --- a/app/views/RoomsListView/Header/Header.ios.js +++ b/app/views/RoomsListView/Header/Header.ios.js @@ -33,8 +33,12 @@ const styles = StyleSheet.create({ const Header = ({ onPress, serverName, showServerDropdown }) => ( - {I18n.t('Messages')} - + + {I18n.t('Messages')} {serverName} diff --git a/app/views/RoomsListView/ServerDropdown.js b/app/views/RoomsListView/ServerDropdown.js index 92508ceb..21fcb154 100644 --- a/app/views/RoomsListView/ServerDropdown.js +++ b/app/views/RoomsListView/ServerDropdown.js @@ -126,7 +126,17 @@ export default class ServerDropdown extends Component { renderServer = ({ item }) => ( this.select(item.id)} style={styles.serverItem} testID={`rooms-list-header-server-${ item.id }`}> - + {item.iconURL ? + : + + } {item.name || item.id} {item.id} diff --git a/app/views/RoomsListView/index.js b/app/views/RoomsListView/index.js index 608e7d1e..1df2dc90 100644 --- a/app/views/RoomsListView/index.js +++ b/app/views/RoomsListView/index.js @@ -18,6 +18,7 @@ import Touch from '../../utils/touch'; import { toggleSortDropdown } from '../../actions/rooms'; const ROW_HEIGHT = 70; +const SCROLL_OFFSET = 56; const isAndroid = () => Platform.OS === 'android'; const getItemLayout = (data, index) => ({ length: ROW_HEIGHT, offset: ROW_HEIGHT * index, index }); @@ -62,6 +63,7 @@ export default class RoomsListView extends LoggedView { static navigatorStyle = { navBarCustomView: 'RoomsListHeaderView', + navBarComponentAlignment: 'fill', navBarBackgroundColor: isAndroid() ? '#2F343D' : undefined, navBarTextColor: isAndroid() ? '#FFF' : undefined, navBarButtonColor: isAndroid() ? '#FFF' : undefined @@ -272,6 +274,7 @@ export default class RoomsListView extends LoggedView { navigator.setButtons({ leftButtons, rightButtons }); navigator.setStyle({ navBarCustomView: 'RoomsListHeaderView', + navBarComponentAlignment: 'fill', navBarBackgroundColor: isAndroid() ? '#2F343D' : undefined, navBarTextColor: isAndroid() ? '#FFF' : undefined, navBarButtonColor: isAndroid() ? '#FFF' : undefined @@ -355,7 +358,16 @@ export default class RoomsListView extends LoggedView { } } - toggleSort = () => this.props.toggleSortDropdown(); + toggleSort = () => { + if (Platform.OS === 'ios') { + this.scroll.scrollTo({ x: 0, y: SCROLL_OFFSET, animated: true }); + } else { + this.scroll.scrollTo({ x: 0, y: 0, animated: true }); + } + setTimeout(() => { + this.props.toggleSortDropdown(); + }, 100); + } renderHeader = () => { if (this.state.search.length > 0) { @@ -471,7 +483,8 @@ export default class RoomsListView extends LoggedView { return ( this.scroll = ref} + contentOffset={Platform.OS === 'ios' ? { x: 0, y: SCROLL_OFFSET } : {}} keyboardShouldPersistTaps='always' testID='rooms-list-view-list' > diff --git a/ios/RocketChatRN/Info.plist b/ios/RocketChatRN/Info.plist index 910891ac..0fe91a1d 100644 --- a/ios/RocketChatRN/Info.plist +++ b/ios/RocketChatRN/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.1 + 1.1.1 CFBundleSignature ???? CFBundleURLTypes