@@ -6,6 +6,7 @@ var Settings = require('./Settings')
6
6
var StoryStore = require ( './stores/StoryStore' )
7
7
var UpdatesStore = require ( './stores/UpdatesStore' )
8
8
var SettingsStore = require ( './stores/SettingsStore' )
9
+ var CurrentColor = require ( './Darkmode' )
9
10
10
11
var App = React . createClass ( {
11
12
getInitialState ( ) {
@@ -26,7 +27,11 @@ var App = React.createClass({
26
27
27
28
componentDidMount ( ) {
28
29
// Empty the prebooted HTML and hydrate using live results from Firebase
29
- this . setState ( { prebootHTML : '' , showChildren : true } )
30
+ this . setState ( {
31
+ prebootHTML : '' ,
32
+ showChildren : true ,
33
+ darkMode : SettingsStore . darkMode
34
+ } )
30
35
} ,
31
36
32
37
componentWillUnmount ( ) {
@@ -48,6 +53,10 @@ var App = React.createClass({
48
53
this . setState ( { showSettings : ! this . state . showSettings } )
49
54
} ,
50
55
56
+ toggleDarkMode ( ) {
57
+ this . setState ( { darkMode : ! this . state . darkMode } )
58
+ } ,
59
+
51
60
render ( ) {
52
61
return < div className = "App" onClick = { this . state . showSettings && this . toggleSettings } >
53
62
< div className = "App__wrap" >
@@ -62,7 +71,7 @@ var App = React.createClass({
62
71
< a className = "App__settings" tabIndex = "0" onClick = { this . toggleSettings } onKeyPress = { this . toggleSettings } >
63
72
{ this . state . showSettings ? 'hide settings' : 'settings' }
64
73
</ a >
65
- { this . state . showSettings && < Settings key = "settings" /> }
74
+ { this . state . showSettings && < Settings key = "settings" toggleDarkMode = { this . toggleDarkMode } /> }
66
75
</ div >
67
76
< div className = "App__content" >
68
77
< div dangerouslySetInnerHTML = { { __html : this . state . prebootHTML } } />
@@ -71,6 +80,7 @@ var App = React.createClass({
71
80
< div className = "App__footer" >
72
81
< a href = "https://github.com/insin/react-hn" > insin/react-hn</ a >
73
82
</ div >
83
+ < CurrentColor darkMode = { this . state . darkMode } />
74
84
</ div >
75
85
</ div >
76
86
}
0 commit comments