Force update RoomSubList after reading a room
so that the notification count is updated. Previously we relied on a force update from RoomList, which was removed as part of the optimisations in https://github.com/matrix-org/matrix-react-sdk/pull/1801pull/6342/head
							parent
							
								
									0e2a911b57
								
							
						
					
					
						commit
						7dc82e2e7a
					
				|  | @ -88,6 +88,11 @@ var RoomSubList = React.createClass({ | |||
|         this.setState({ | ||||
|             sortedList: this.applySearchFilter(this.props.list, this.props.searchFilter), | ||||
|         }); | ||||
|         this.dispatcherRef = dis.register(this.onAction); | ||||
|     }, | ||||
| 
 | ||||
|     componentWillUnmount: function() { | ||||
|         dis.unregister(this.dispatcherRef); | ||||
|     }, | ||||
| 
 | ||||
|     componentWillReceiveProps: function(newProps) { | ||||
|  | @ -116,6 +121,21 @@ var RoomSubList = React.createClass({ | |||
|         } | ||||
|     }, | ||||
| 
 | ||||
|     onAction: function(payload) { | ||||
|         // XXX: Previously RoomList would forceUpdate whenever on_room_read is dispatched,
 | ||||
|         // but this is no longer true, so we must do it here (and can apply the small
 | ||||
|         // optimisation of checking that we care about the room being read).
 | ||||
|         //
 | ||||
|         // Ultimately we need to transition to a state pushing flow where something
 | ||||
|         // explicitly notifies the components concerned that the notif count for a room
 | ||||
|         // has change (e.g. a Flux store).
 | ||||
|         if (payload.action === 'on_room_read' && | ||||
|             this.props.list.some((r) => r.roomId === payload.roomId) | ||||
|         ) { | ||||
|             this.forceUpdate(); | ||||
|         } | ||||
|     }, | ||||
| 
 | ||||
|     onClick: function(ev) { | ||||
|         if (this.isCollapsableOnClick()) { | ||||
|             // The header isCollapsable, so the click is to be interpreted as collapse and truncation logic
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Luke Barnard
						Luke Barnard