Skip to content

Commit e2a6767

Browse files
fix: persist dark mode theme after page reload (#2730)
1 parent 2c5d977 commit e2a6767

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

src/app/settings/settings.service.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -255,11 +255,11 @@ export class SettingsService {
255255
});
256256
}
257257

258-
setThemeDarkEnabled(enabled: string) {
259-
localStorage.setItem('mifosXThemeDarkEnabled', enabled);
258+
setThemeDarkEnabled(enabled: boolean) {
259+
localStorage.setItem('mifosXThemeDarkEnabled', JSON.stringify(enabled));
260260
}
261261

262-
get themeDarkEnabled() {
262+
get themeDarkEnabled(): boolean {
263263
return JSON.parse(localStorage.getItem('mifosXThemeDarkEnabled'));
264264
}
265265
}

src/app/shared/theme-toggle/theme-toggle.component.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ export class ThemeToggleComponent implements OnInit, OnChanges {
2424
) {}
2525

2626
ngOnInit(): void {
27-
this.darkModeOn = this.settingsService.themeDarkEnabled === 'true';
27+
this.darkModeOn = !!this.settingsService.themeDarkEnabled;
2828
}
2929

3030
ngOnChanges(changes: SimpleChanges): void {
31-
this.darkModeOn = this.settingsService.themeDarkEnabled === 'true';
31+
this.darkModeOn = !!this.settingsService.themeDarkEnabled;
3232
}
3333

3434
toggleTheme() {
3535
this.darkModeOn = !this.darkModeOn;
36-
this.settingsService.setThemeDarkEnabled(this.darkModeOn ? 'true' : 'false');
36+
this.settingsService.setThemeDarkEnabled(this.darkModeOn);
3737
this.themingService.setDarkMode(this.darkModeOn);
3838
}
3939
}

src/app/web-app.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ export class WebAppComponent implements OnInit, OnDestroy {
148148
this.cssClass = value;
149149
});
150150
this.themingService.setInitialDarkMode();
151-
this.themingService.setDarkMode(this.settingsService.themeDarkEnabled === 'true');
151+
this.themingService.setDarkMode(!!this.settingsService.themeDarkEnabled);
152152

153153
// Setup logger
154154
if (environment.production) {

0 commit comments

Comments
 (0)