From 60ebfde29800d8a79f50580edea4db3418c2aba6 Mon Sep 17 00:00:00 2001 From: catarak Date: Wed, 14 Sep 2016 11:55:53 -0400 Subject: [PATCH] more half finished theme stuff --- client/modules/App/App.js | 15 ++++++++++-- client/modules/IDE/pages/IDEView.js | 8 +------ client/routes.js | 2 +- client/styles/abstracts/_mixins.scss | 3 +-- client/styles/abstracts/_placeholders.scss | 24 ++++++++------------ client/styles/base/_base.scss | 4 +++- client/styles/components/_github-button.scss | 8 +++---- client/styles/components/_nav.scss | 4 ---- client/styles/components/_preferences.scss | 20 ++++++++-------- client/styles/components/_toolbar.scss | 12 +++++----- 10 files changed, 50 insertions(+), 50 deletions(-) diff --git a/client/modules/App/App.js b/client/modules/App/App.js index 5598225d..0c69c4e6 100644 --- a/client/modules/App/App.js +++ b/client/modules/App/App.js @@ -1,10 +1,12 @@ import React, { PropTypes } from 'react'; import { connect } from 'react-redux'; import DevTools from './components/DevTools'; +import classNames from 'classnames'; class App extends React.Component { constructor(props, context) { super(props, context); + console.log(props); this.state = { isMounted: false }; } @@ -13,8 +15,14 @@ class App extends React.Component { } render() { + const theme = this.props.route.theme; + const appClass = classNames({ + app: true, + light: theme === 'light', + dark: theme === 'dark' + }); return ( -
+
{this.state.isMounted && !window.devToolsExtension && process.env.NODE_ENV === 'development' && } {this.props.children}
@@ -23,7 +31,10 @@ class App extends React.Component { } App.propTypes = { - children: PropTypes.object + children: PropTypes.object, + route: PropTypes.shape({ + theme: PropTypes.string.isRequired + }).isRequired }; export default connect()(App); diff --git a/client/modules/IDE/pages/IDEView.js b/client/modules/IDE/pages/IDEView.js index 347ae957..1db87882 100644 --- a/client/modules/IDE/pages/IDEView.js +++ b/client/modules/IDE/pages/IDEView.js @@ -27,7 +27,6 @@ import SplitPane from 'react-split-pane'; import Overlay from '../../App/components/Overlay'; import SketchList from '../components/SketchList'; import About from '../components/About'; -import classNames from 'classnames'; class IDEView extends React.Component { constructor(props) { @@ -157,13 +156,8 @@ class IDEView extends React.Component { } render() { - let ideClass = classNames({ - ide: true, - light: this.props.preferences.theme === 'light', - dark: this.props.preferences.theme === 'dark', - }); return ( -
+
{this.props.toast.isVisible && }