File tree Expand file tree Collapse file tree 4 files changed +36
-8
lines changed Expand file tree Collapse file tree 4 files changed +36
-8
lines changed Original file line number Diff line number Diff line change @@ -6677,10 +6677,18 @@ class Activity {
66776677 // Function to toggle theme mode
66786678 this . toggleThemeMode = ( ) => {
66796679 if ( this . storage . myThemeName === "darkMode" ) {
6680- // If currently in dark mode, remove the theme
66816680 delete this . storage . myThemeName ;
6681+ localStorage . setItem ( "darkMode" , "disabled" ) ;
66826682 } else {
66836683 this . storage . myThemeName = "darkMode" ;
6684+ localStorage . setItem ( "darkMode" , "enabled" ) ;
6685+ }
6686+ const planetIframe = document . getElementById ( "planet-iframe" ) ;
6687+ if ( planetIframe ) {
6688+ planetIframe . contentWindow . postMessage (
6689+ { darkMode : localStorage . getItem ( "darkMode" ) } ,
6690+ "*"
6691+ ) ;
66846692 }
66856693 try {
66866694 window . location . reload ( ) ;
Original file line number Diff line number Diff line change @@ -307,7 +307,6 @@ class PlanetInterface {
307307 */
308308 this . init = async ( ) => {
309309 this . iframe = document . getElementById ( "planet-iframe" ) ;
310- this . iframe . style . backgroundColor = platformColor . background ;
311310 try {
312311 await this . iframe . contentWindow . makePlanet (
313312 _THIS_IS_MUSIC_BLOCKS_ ,
Original file line number Diff line number Diff line change @@ -338,11 +338,5 @@ <h4 id="projectviewer-title"></h4>
338338 </ div >
339339 </ div >
340340 </ div >
341- < script >
342- // Dark Mode Toggle Functionality
343- document . getElementById ( 'toggle-dark-mode' ) . addEventListener ( 'click' , function ( ) {
344- document . body . classList . toggle ( 'dark-mode' ) ;
345- } ) ;
346- </ script >
347341 </ body >
348342</ html >
Original file line number Diff line number Diff line change @@ -150,3 +150,30 @@ class Planet {
150150 } ;
151151
152152}
153+
154+ // trigger and sync the dark mode of the planet with the main page
155+ document . addEventListener ( "DOMContentLoaded" , function ( ) {
156+ const toggleButton = document . getElementById ( "toggle-dark-mode" ) ;
157+
158+ if ( localStorage . getItem ( "darkMode" ) === "enabled" ) {
159+ document . body . classList . add ( "dark-mode" ) ;
160+ }
161+ if ( toggleButton ) {
162+ toggleButton . addEventListener ( "click" , function ( ) {
163+ document . body . classList . toggle ( "dark-mode" ) ;
164+ const newMode = document . body . classList . contains ( "dark-mode" ) ? "enabled" : "disabled" ;
165+
166+ localStorage . setItem ( "darkMode" , newMode ) ;
167+ localStorage . setItem ( "darkModeTrigger" , Date . now ( ) ) ;
168+ } ) ;
169+ }
170+ window . addEventListener ( "storage" , function ( event ) {
171+ if ( event . key === "darkMode" || event . key === "darkModeTrigger" ) {
172+ if ( localStorage . getItem ( "darkMode" ) === "enabled" ) {
173+ document . body . classList . add ( "dark-mode" ) ;
174+ } else {
175+ document . body . classList . remove ( "dark-mode" ) ;
176+ }
177+ }
178+ } ) ;
179+ } ) ;
You can’t perform that action at this time.
0 commit comments