about summary refs log tree commit diff
path: root/app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js')
-rw-r--r--app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js29
1 files changed, 20 insertions, 9 deletions
diff --git a/app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js b/app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js
index f3489b409..405064c3f 100644
--- a/app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js
+++ b/app/javascript/mastodon/features/community_timeline/containers/column_settings_container.js
@@ -1,17 +1,28 @@
 import { connect } from 'react-redux';
 import ColumnSettings from '../components/column_settings';
 import { changeSetting } from '../../../actions/settings';
+import { changeColumnParams } from '../../../actions/columns';
 
-const mapStateToProps = state => ({
-  settings: state.getIn(['settings', 'community']),
-});
+const mapStateToProps = (state, { columnId }) => {
+  const uuid = columnId;
+  const columns = state.getIn(['settings', 'columns']);
+  const index = columns.findIndex(c => c.get('uuid') === uuid);
 
-const mapDispatchToProps = dispatch => ({
+  return {
+    settings: (uuid && index >= 0) ? columns.get(index).get('params') : state.getIn(['settings', 'community']),
+  };
+};
 
-  onChange (key, checked) {
-    dispatch(changeSetting(['community', ...key], checked));
-  },
-
-});
+const mapDispatchToProps = (dispatch, { columnId }) => {
+  return {
+    onChange (key, checked) {
+      if (columnId) {
+        dispatch(changeColumnParams(columnId, key, checked));
+      } else {
+        dispatch(changeSetting(['community', ...key], checked));
+      }
+    },
+  };
+};
 
 export default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);