Merge upstream 2.0ish #165
This commit is contained in:
		@@ -25,18 +25,45 @@ export default class StatusList extends ImmutablePureComponent {
 | 
			
		||||
    trackScroll: true,
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  handleMoveUp = id => {
 | 
			
		||||
    const elementIndex = this.props.statusIds.indexOf(id) - 1;
 | 
			
		||||
    this._selectChild(elementIndex);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleMoveDown = id => {
 | 
			
		||||
    const elementIndex = this.props.statusIds.indexOf(id) + 1;
 | 
			
		||||
    this._selectChild(elementIndex);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  _selectChild (index) {
 | 
			
		||||
    const element = this.node.node.querySelector(`article:nth-of-type(${index + 1}) .focusable`);
 | 
			
		||||
 | 
			
		||||
    if (element) {
 | 
			
		||||
      element.focus();
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  setRef = c => {
 | 
			
		||||
    this.node = c;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  render () {
 | 
			
		||||
    const { statusIds, ...other } = this.props;
 | 
			
		||||
    const { isLoading } = other;
 | 
			
		||||
 | 
			
		||||
    const scrollableContent = (isLoading || statusIds.size > 0) ? (
 | 
			
		||||
      statusIds.map((statusId) => (
 | 
			
		||||
        <StatusContainer key={statusId} id={statusId} />
 | 
			
		||||
        <StatusContainer
 | 
			
		||||
          key={statusId}
 | 
			
		||||
          id={statusId}
 | 
			
		||||
          onMoveUp={this.handleMoveUp}
 | 
			
		||||
          onMoveDown={this.handleMoveDown}
 | 
			
		||||
        />
 | 
			
		||||
      ))
 | 
			
		||||
    ) : null;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <ScrollableList {...other}>
 | 
			
		||||
      <ScrollableList {...other} ref={this.setRef}>
 | 
			
		||||
        {scrollableContent}
 | 
			
		||||
      </ScrollableList>
 | 
			
		||||
    );
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user