Always display tab navigation on local/federated timeline even when empty (#7663)

Fix #7659
This commit is contained in:
Eugen Rochko 2018-05-29 02:01:04 +02:00 committed by GitHub
parent e599d7caf2
commit 90b64c0069
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 3 deletions

View file

@ -25,6 +25,7 @@ export default class ScrollableList extends PureComponent {
isLoading: PropTypes.bool, isLoading: PropTypes.bool,
hasMore: PropTypes.bool, hasMore: PropTypes.bool,
prepend: PropTypes.node, prepend: PropTypes.node,
alwaysPrepend: PropTypes.bool,
emptyMessage: PropTypes.node, emptyMessage: PropTypes.node,
children: PropTypes.node, children: PropTypes.node,
}; };
@ -140,7 +141,7 @@ export default class ScrollableList extends PureComponent {
} }
render () { render () {
const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, emptyMessage, onLoadMore } = this.props; const { children, scrollKey, trackScroll, shouldUpdateScroll, isLoading, hasMore, prepend, alwaysPrepend, emptyMessage, onLoadMore } = this.props;
const { fullscreen } = this.state; const { fullscreen } = this.state;
const childrenCount = React.Children.count(children); const childrenCount = React.Children.count(children);
@ -172,8 +173,12 @@ export default class ScrollableList extends PureComponent {
); );
} else { } else {
scrollableArea = ( scrollableArea = (
<div className='empty-column-indicator' ref={this.setRef}> <div style={{ flex: '1 1 auto', display: 'flex', flexDirection: 'column' }}>
{emptyMessage} {alwaysPrepend && prepend}
<div className='empty-column-indicator' ref={this.setRef}>
{emptyMessage}
</div>
</div> </div>
); );
} }

View file

@ -24,6 +24,7 @@ export default class StatusList extends ImmutablePureComponent {
hasMore: PropTypes.bool, hasMore: PropTypes.bool,
prepend: PropTypes.node, prepend: PropTypes.node,
emptyMessage: PropTypes.node, emptyMessage: PropTypes.node,
alwaysPrepend: PropTypes.bool,
}; };
static defaultProps = { static defaultProps = {

View file

@ -127,6 +127,7 @@ export default class CommunityTimeline extends React.PureComponent {
<StatusListContainer <StatusListContainer
prepend={headline} prepend={headline}
alwaysPrepend
trackScroll={!pinned} trackScroll={!pinned}
scrollKey={`community_timeline-${columnId}`} scrollKey={`community_timeline-${columnId}`}
timelineId={`community${onlyMedia ? ':media' : ''}`} timelineId={`community${onlyMedia ? ':media' : ''}`}

View file

@ -127,6 +127,7 @@ export default class PublicTimeline extends React.PureComponent {
<StatusListContainer <StatusListContainer
prepend={headline} prepend={headline}
alwaysPrepend
timelineId={`public${onlyMedia ? ':media' : ''}`} timelineId={`public${onlyMedia ? ':media' : ''}`}
onLoadMore={this.handleLoadMore} onLoadMore={this.handleLoadMore}
trackScroll={!pinned} trackScroll={!pinned}