From 394aaaf23f5ff35e2282ca37d574223178f55d92 Mon Sep 17 00:00:00 2001 From: Alex Gleason Date: Tue, 21 Apr 2020 15:05:49 -0500 Subject: [PATCH] Add systemFont preference --- app/gabsocial/containers/gabsocial.js | 11 ++++++++++- app/gabsocial/features/preferences/index.js | 4 ++++ app/gabsocial/reducers/settings.js | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/gabsocial/containers/gabsocial.js b/app/gabsocial/containers/gabsocial.js index 77f4509fe..5e1d0675f 100644 --- a/app/gabsocial/containers/gabsocial.js +++ b/app/gabsocial/containers/gabsocial.js @@ -4,6 +4,7 @@ import React from 'react'; import { Provider, connect } from 'react-redux'; import PropTypes from 'prop-types'; import Helmet from 'gabsocial/components/helmet'; +import classNames from 'classnames'; import configureStore from '../store/configureStore'; import { INTRODUCTION_VERSION } from '../actions/onboarding'; import { Switch, BrowserRouter, Route } from 'react-router-dom'; @@ -42,6 +43,7 @@ const mapStateToProps = (state) => { showIntroduction, me, theme: state.getIn(['settings', 'theme']), + systemFont: state.getIn(['settings', 'systemFont']), }; }; @@ -52,10 +54,11 @@ class GabSocialMount extends React.PureComponent { showIntroduction: PropTypes.bool, me: PropTypes.string, theme: PropTypes.string, + systemFont: PropTypes.bool, }; render() { - const { me, theme } = this.props; + const { me, theme, systemFont } = this.props; if (me === null) return null; // Disabling introduction for launch @@ -65,9 +68,15 @@ class GabSocialMount extends React.PureComponent { // return ; // } + const bodyClass = classNames('app-body', { + [`theme-${theme}`]: theme, + 'system-font': systemFont, + }); + return ( <> + {theme && } diff --git a/app/gabsocial/features/preferences/index.js b/app/gabsocial/features/preferences/index.js index ce0b75406..9b3a1a0d3 100644 --- a/app/gabsocial/features/preferences/index.js +++ b/app/gabsocial/features/preferences/index.js @@ -132,6 +132,10 @@ class Preferences extends ImmutablePureComponent { label='Reduce motion in animations' path={['reduceMotion']} /> + diff --git a/app/gabsocial/reducers/settings.js b/app/gabsocial/reducers/settings.js index c3b30481a..8c6323a3d 100644 --- a/app/gabsocial/reducers/settings.js +++ b/app/gabsocial/reducers/settings.js @@ -22,6 +22,8 @@ const initialState = ImmutableMap({ defaultPrivacy: 'public', theme: 'lime', + systemFont: false, + home: ImmutableMap({ shows: ImmutableMap({ reblog: true,