Add own composed status to home without waiting for websocket event
This makes the UI appear less laggy. After all, the status *is* created right there and then, it's the distribution to home timelines that can take a while
This commit is contained in:
		| @@ -1,5 +1,7 @@ | ||||
| import api from '../api' | ||||
|  | ||||
| import { updateTimeline } from './timelines'; | ||||
|  | ||||
| export const COMPOSE_CHANGE          = 'COMPOSE_CHANGE'; | ||||
| export const COMPOSE_SUBMIT_REQUEST  = 'COMPOSE_SUBMIT_REQUEST'; | ||||
| export const COMPOSE_SUBMIT_SUCCESS  = 'COMPOSE_SUBMIT_SUCCESS'; | ||||
| @@ -66,9 +68,13 @@ export function submitComposeRequest() { | ||||
| }; | ||||
|  | ||||
| export function submitComposeSuccess(status) { | ||||
|   return { | ||||
|     type: COMPOSE_SUBMIT_SUCCESS, | ||||
|     status: status | ||||
|   return (dispatch, getState) => { | ||||
|     dispatch({ | ||||
|       type: COMPOSE_SUBMIT_SUCCESS, | ||||
|       status: status | ||||
|     }); | ||||
|  | ||||
|     dispatch(updateTimeline('home', status)); | ||||
|   }; | ||||
| }; | ||||
|  | ||||
|   | ||||
| @@ -95,6 +95,10 @@ const updateTimeline = (state, timeline, status, references) => { | ||||
|   state = normalizeStatus(state, status); | ||||
|  | ||||
|   state = state.update(timeline, list => { | ||||
|     if (list.includes(status.get('id'))) { | ||||
|       return list; | ||||
|     } | ||||
|  | ||||
|     const reblogOfId = status.getIn(['reblog', 'id'], null); | ||||
|  | ||||
|     if (reblogOfId !== null) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user