message: [City] Ensure renders aren't needed due to function props changing.
diff: @@ -144,6 +144,23 @@ export class CityView extends Component<Props, State> {
  }
  }
  + renderTabBar(props) {
  + return (
  + <View>
  + <TabBar {...props} spaceEvenly={false} />
  + </View>
  + )
  + }
  +
  + // TODO: Is it correct that we have these two similar ones?
  + onScrollableTabViewLayout = layout => {
  + this.scrollViewVerticalStart = layout.nativeEvent.layout.y
  + }
  + onScrollViewLayout = layout => {
  + this.scrollViewVerticalStart = layout.nativeEvent.layout.y
  + NativeModules.ARNotificationsManager.postNotificationName("ARLocalDiscoveryCityGotScrollView", {})
  + }
  +
  render() {
  const { buckets, cityName, citySlug, relayErrorState } = this.state
  const { verticalMargin } = this.props
  @@ -163,19 +180,12 @@ export class CityView extends Component<Props, State> {
  initialPage={this.props.initialTab || AllCityMetaTab}
  onChangeTab={this.setSelectedTab}
  prerenderingSiblingsNumber={2}
  - renderTabBar={props => (
  - <View>
  - <TabBar {...props} spaceEvenly={false} />
  - </View>
  - )}
  - onLayout={layout => (this.scrollViewVerticalStart = layout.nativeEvent.layout.y)}
  + renderTabBar={this.renderTabBar}
  + onLayout={this.onScrollableTabViewLayout}
  // These are the ScrollView props for inside the scrollable tab view
  contentProps={{
  contentInset: { bottom: bottomInset },
  - onLayout: layout => {
  - this.scrollViewVerticalStart = layout.nativeEvent.layout.y
  - NativeModules.ARNotificationsManager.postNotificationName("ARLocalDiscoveryCityGotScrollView", {})
  - },
  + onLayout: this.onScrollViewLayout,
  }}
  >
  <ScrollableTab tabLabel="All" key="all">
  