about summary refs log tree commit diff
path: root/app/javascript/mastodon/reducers/settings.js
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2022-05-16 11:18:35 +0200
committerGitHub <noreply@github.com>2022-05-16 11:18:35 +0200
commit0cdb07757050825725cac76f1c9cf11cf64acc0a (patch)
tree297332f429df3eb166f4e46da4cdcb674303d214 /app/javascript/mastodon/reducers/settings.js
parentc3fac61f56b3ad63534961f3d3c426cdf8ac6213 (diff)
Add language dropdown to compose in web UI (#18420)
Diffstat (limited to 'app/javascript/mastodon/reducers/settings.js')
-rw-r--r--app/javascript/mastodon/reducers/settings.js5
1 files changed, 5 insertions, 0 deletions
diff --git a/app/javascript/mastodon/reducers/settings.js b/app/javascript/mastodon/reducers/settings.js
index 39639f3dc..afffce917 100644
--- a/app/javascript/mastodon/reducers/settings.js
+++ b/app/javascript/mastodon/reducers/settings.js
@@ -3,6 +3,7 @@ import { NOTIFICATIONS_FILTER_SET } from '../actions/notifications';
 import { COLUMN_ADD, COLUMN_REMOVE, COLUMN_MOVE, COLUMN_PARAMS_CHANGE } from '../actions/columns';
 import { STORE_HYDRATE } from '../actions/store';
 import { EMOJI_USE } from '../actions/emojis';
+import { LANGUAGE_USE } from '../actions/languages';
 import { LIST_DELETE_SUCCESS, LIST_FETCH_FAIL } from '../actions/lists';
 import { Map as ImmutableMap, fromJS } from 'immutable';
 import uuid from '../uuid';
@@ -129,6 +130,8 @@ const changeColumnParams = (state, uuid, path, value) => {
 
 const updateFrequentEmojis = (state, emoji) => state.update('frequentlyUsedEmojis', ImmutableMap(), map => map.update(emoji.id, 0, count => count + 1)).set('saved', false);
 
+const updateFrequentLanguages = (state, language) => state.update('frequentlyUsedLanguages', ImmutableMap(), map => map.update(language, 0, count => count + 1)).set('saved', false);
+
 const filterDeadListColumns = (state, listId) => state.update('columns', columns => columns.filterNot(column => column.get('id') === 'LIST' && column.get('params').get('id') === listId));
 
 export default function settings(state = initialState, action) {
@@ -154,6 +157,8 @@ export default function settings(state = initialState, action) {
     return changeColumnParams(state, action.uuid, action.path, action.value);
   case EMOJI_USE:
     return updateFrequentEmojis(state, action.emoji);
+  case LANGUAGE_USE:
+    return updateFrequentLanguages(state, action.language);
   case SETTING_SAVE:
     return state.set('saved', true);
   case LIST_FETCH_FAIL: