diff --git a/app/javascript/flavours/glitch/actions/statuses.js b/app/javascript/flavours/glitch/actions/statuses.js index 6eb5d904bc..7b37712a9c 100644 --- a/app/javascript/flavours/glitch/actions/statuses.js +++ b/app/javascript/flavours/glitch/actions/statuses.js @@ -109,7 +109,7 @@ export function fetchStatusFail(id, error, skipLoading, parentQuotePostId) { }; } -export function redraft(status, raw_text, content_type) { +export function redraft(status, raw_text, content_type, quoted_status_id = null) { return (dispatch, getState) => { const maxOptions = getState().server.getIn(['server', 'configuration', 'polls', 'max_options']); @@ -117,6 +117,7 @@ export function redraft(status, raw_text, content_type) { type: REDRAFT, status, raw_text, + quoted_status_id, content_type, maxOptions, }); @@ -135,7 +136,7 @@ export const editStatus = (id) => (dispatch, getState) => { api().get(`/api/v1/statuses/${id}/source`).then(response => { dispatch(fetchStatusSourceSuccess()); ensureComposeIsVisible(getState); - dispatch(setComposeToStatus(status, response.data.text, response.data.spoiler_text, response.data.content_type)); + dispatch(setComposeToStatus(status, response.data.text, response.data.spoiler_text, response.data.content_type, response.data.quote?.quoted_status?.id)); }).catch(error => { dispatch(fetchStatusSourceFail(error)); }); diff --git a/app/javascript/flavours/glitch/reducers/compose.js b/app/javascript/flavours/glitch/reducers/compose.js index db9cb24928..876ba528c6 100644 --- a/app/javascript/flavours/glitch/reducers/compose.js +++ b/app/javascript/flavours/glitch/reducers/compose.js @@ -646,7 +646,7 @@ export const composeReducer = (state = initialState, action) => { map => map.merge(new ImmutableMap({ do_not_federate })), ); map.set('id', null); - map.set('quoted_status_id', action.status.getIn(['quote', 'quoted_status'], null)); + map.set('quoted_status_id', action.quoted_status_id); // Mastodon-authored posts can be expected to have at most one automatic approval policy map.set('quote_policy', action.status.getIn(['quote_approval', 'automatic', 0]) || 'nobody');