diff --git a/ui/component/settingAppearance/index.js b/ui/component/settingAppearance/index.js
index 30230b578..609263f25 100644
--- a/ui/component/settingAppearance/index.js
+++ b/ui/component/settingAppearance/index.js
@@ -1,8 +1,15 @@
import { connect } from 'react-redux';
+import { SETTINGS } from 'lbry-redux';
+import { doSetClientSetting } from 'redux/actions/settings';
+import { makeSelectClientSetting } from 'redux/selectors/settings';
import SettingAppearance from './view';
-const select = (state) => ({});
+const select = (state) => ({
+ clock24h: makeSelectClientSetting(SETTINGS.CLOCK_24H)(state),
+});
-const perform = (dispatch) => ({});
+const perform = (dispatch) => ({
+ setClientSetting: (key, value) => dispatch(doSetClientSetting(key, value)),
+});
export default connect(select, perform)(SettingAppearance);
diff --git a/ui/component/settingAppearance/view.jsx b/ui/component/settingAppearance/view.jsx
index 2aa59bfe7..0a3d42616 100644
--- a/ui/component/settingAppearance/view.jsx
+++ b/ui/component/settingAppearance/view.jsx
@@ -1,15 +1,22 @@
// @flow
import React from 'react';
+import { SETTINGS } from 'lbry-redux';
import Card from 'component/common/card';
+import { FormField } from 'component/common/form';
import HomepageSelector from 'component/homepageSelector';
import SettingLanguage from 'component/settingLanguage';
import ThemeSelector from 'component/themeSelector';
// $FlowFixMe
import homepages from 'homepages';
-type Props = {};
+type Props = {
+ clock24h: boolean,
+ setClientSetting: (string, boolean | string | number) => void,
+};
export default function SettingAppearance(props: Props) {
+ const { clock24h, setClientSetting } = props;
+
return (
-
+ SettingsRow title={__('Theme')}>
+
+
+ setClientSetting(SETTINGS.CLOCK_24H, !clock24h)}
+ checked={clock24h}
+ />
+
>
}
/>
diff --git a/ui/page/settings/index.js b/ui/page/settings/index.js
index 48965eaf2..c72fc75ba 100644
--- a/ui/page/settings/index.js
+++ b/ui/page/settings/index.js
@@ -19,7 +19,6 @@ const select = (state) => ({
allowAnalytics: selectAllowAnalytics(state),
isAuthenticated: selectUserVerifiedEmail(state),
showNsfw: selectShowMatureContent(state),
- clock24h: makeSelectClientSetting(SETTINGS.CLOCK_24H)(state),
autoplay: makeSelectClientSetting(SETTINGS.AUTOPLAY)(state),
autoDownload: makeSelectClientSetting(SETTINGS.AUTO_DOWNLOAD)(state),
hideBalance: makeSelectClientSetting(SETTINGS.HIDE_BALANCE)(state),
diff --git a/ui/page/settings/view.jsx b/ui/page/settings/view.jsx
index 6ab968cac..6c91aa7b2 100644
--- a/ui/page/settings/view.jsx
+++ b/ui/page/settings/view.jsx
@@ -41,7 +41,6 @@ type Props = {
isAuthenticated: boolean,
instantPurchaseEnabled: boolean,
instantPurchaseMax: Price,
- clock24h: boolean,
autoplay: boolean,
floatingPlayer: boolean,
hideReposts: ?boolean,
@@ -64,10 +63,6 @@ class SettingsPage extends React.PureComponent {
exitSettings();
}
- onClock24hChange(value: boolean) {
- this.props.setClientSetting(SETTINGS.CLOCK_24H, value);
- }
-
setDaemonSetting(name: string, value: ?SetDaemonSettingArg): void {
this.props.setDaemonSetting(name, value);
}
@@ -82,7 +77,6 @@ class SettingsPage extends React.PureComponent {
allowAnalytics,
showNsfw,
isAuthenticated,
- clock24h,
autoplay,
// autoDownload,
setDaemonSetting,
@@ -153,23 +147,6 @@ class SettingsPage extends React.PureComponent {
/>
{/* @endif */}
-
-
- this.onClock24hChange(!clock24h)}
- checked={clock24h}
- label={__('24-hour clock')}
- />
-
-
- }
- />
-