[Glitch] Fix the hot key (j, k) does not function correctly when there is a pinned toot in account timeline.
Port 23106844a10606dd0e04c8382281d5ff80d4bdd9 to glitch-soc
This commit is contained in:
		
							parent
							
								
									06fc278e4c
								
							
						
					
					
						commit
						003d114332
					
				| @ -253,12 +253,12 @@ export default class Status extends ImmutablePureComponent { | ||||
|     this.context.router.history.push(`/accounts/${this.props.status.getIn(['account', 'id'])}`); | ||||
|   } | ||||
| 
 | ||||
|   handleHotkeyMoveUp = () => { | ||||
|     this.props.onMoveUp(this.props.containerId || this.props.id); | ||||
|   handleHotkeyMoveUp = e => { | ||||
|     this.props.onMoveUp(this.props.containerId || this.props.id, e.target.getAttribute('data-featured')); | ||||
|   } | ||||
| 
 | ||||
|   handleHotkeyMoveDown = () => { | ||||
|     this.props.onMoveDown(this.props.containerId || this.props.id); | ||||
|   handleHotkeyMoveDown = e => { | ||||
|     this.props.onMoveDown(this.props.containerId || this.props.id, e.target.getAttribute('data-featured')); | ||||
|   } | ||||
| 
 | ||||
|   handleRef = c => { | ||||
| @ -292,6 +292,7 @@ export default class Status extends ImmutablePureComponent { | ||||
|       onOpenMedia, | ||||
|       notification, | ||||
|       hidden, | ||||
|       featured, | ||||
|       ...other | ||||
|     } = this.props; | ||||
|     const { isExpanded } = this.state; | ||||
| @ -426,6 +427,7 @@ export default class Status extends ImmutablePureComponent { | ||||
|           {...selectorAttribs} | ||||
|           ref={handleRef} | ||||
|           tabIndex='0' | ||||
|           data-featured={featured ? 'true' : null} | ||||
|         > | ||||
|           <header className='status__info'> | ||||
|             <span> | ||||
|  | ||||
| @ -28,13 +28,25 @@ export default class StatusList extends ImmutablePureComponent { | ||||
|     trackScroll: true, | ||||
|   }; | ||||
| 
 | ||||
|   handleMoveUp = id => { | ||||
|     const elementIndex = this.props.statusIds.indexOf(id) - 1; | ||||
|   getFeaturedStatusCount = () => { | ||||
|     return this.props.featuredStatusIds ? this.props.featuredStatusIds.size : 0; | ||||
|   } | ||||
| 
 | ||||
|   getCurrentStatusIndex = (id, featured) => { | ||||
|     if (featured) { | ||||
|       return this.props.featuredStatusIds.indexOf(id); | ||||
|     } else { | ||||
|       return this.props.statusIds.indexOf(id) + this.getFeaturedStatusCount(); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   handleMoveUp = (id, featured) => { | ||||
|     const elementIndex = this.getCurrentStatusIndex(id, featured) - 1; | ||||
|     this._selectChild(elementIndex); | ||||
|   } | ||||
| 
 | ||||
|   handleMoveDown = id => { | ||||
|     const elementIndex = this.props.statusIds.indexOf(id) + 1; | ||||
|   handleMoveDown = (id, featured) => { | ||||
|     const elementIndex = this.getCurrentStatusIndex(id, featured) + 1; | ||||
|     this._selectChild(elementIndex); | ||||
|   } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user