Fix additional local-only emoji being added when updating toot
An additional local-only emoji was added to toots after editing a local-only toot, because the `do_not_federate` option is `true` and a local-only emoji is added unconditionally in such a case. Signed-off-by: Plastikmensch <plastikmensch@users.noreply.github.com>pull/2430/head
parent
954f125918
commit
f88e33d836
|
@ -364,6 +364,8 @@ const updateSuggestionTags = (state, token) => {
|
|||
};
|
||||
|
||||
export default function compose(state = initialState, action) {
|
||||
let do_not_federate, text;
|
||||
|
||||
switch(action.type) {
|
||||
case STORE_HYDRATE:
|
||||
return hydrate(state, action.state.get('compose'));
|
||||
|
@ -568,8 +570,8 @@ export default function compose(state = initialState, action) {
|
|||
case COMPOSE_DOODLE_SET:
|
||||
return state.mergeIn(['doodle'], action.options);
|
||||
case REDRAFT:
|
||||
const do_not_federate = !!action.status.get('local_only');
|
||||
let text = action.raw_text || unescapeHTML(expandMentions(action.status));
|
||||
do_not_federate = !!action.status.get('local_only');
|
||||
text = action.raw_text || unescapeHTML(expandMentions(action.status));
|
||||
if (do_not_federate) text = text.replace(/ ?👁\ufe0f?\u200b?$/, '');
|
||||
return state.withMutations(map => {
|
||||
map.set('text', text);
|
||||
|
@ -609,9 +611,12 @@ export default function compose(state = initialState, action) {
|
|||
}
|
||||
});
|
||||
case COMPOSE_SET_STATUS:
|
||||
do_not_federate = !!action.status.get('local_only');
|
||||
text = action.text || unescapeHTML(expandMentions(action.status));
|
||||
if (do_not_federate) text = text.replace(/ ?👁\ufe0f?\u200b?$/, '');
|
||||
return state.withMutations(map => {
|
||||
map.set('id', action.status.get('id'));
|
||||
map.set('text', action.text);
|
||||
map.set('text', text);
|
||||
map.set('content_type', action.content_type || 'text/plain');
|
||||
map.set('in_reply_to', action.status.get('in_reply_to_id'));
|
||||
map.set('privacy', action.status.get('visibility'));
|
||||
|
@ -632,7 +637,7 @@ export default function compose(state = initialState, action) {
|
|||
|
||||
map.update(
|
||||
'advanced_options',
|
||||
map => map.merge(new ImmutableMap({ do_not_federate: action.status.get('local_only'), threaded_mode: false })),
|
||||
map => map.merge(new ImmutableMap({ do_not_federate, threaded_mode: false })),
|
||||
);
|
||||
|
||||
if (action.status.get('poll')) {
|
||||
|
|
Loading…
Reference in New Issue