fix(iOS): use correct system theme mode in auto mode on iOS, closes #3698 (#3704)

This commit is contained in:
Huang Xin
2026-03-31 23:06:08 +08:00
committed by GitHub
parent e68dedd10d
commit 5e048ddab1
2 changed files with 4 additions and 1 deletions
+3
View File
@@ -169,6 +169,9 @@ export const initSystemThemeListener = (appService: AppService) => {
} else {
systemIsDarkMode = mediaQuery.matches;
}
if (typeof window !== 'undefined' && localStorage) {
localStorage.setItem('systemIsDarkMode', systemIsDarkMode ? 'true' : 'false');
}
useThemeStore.getState().handleSystemThemeChange(systemIsDarkMode);
};
+1 -1
View File
@@ -553,8 +553,8 @@ export const getThemeCode = () => {
if (typeof window !== 'undefined') {
themeColor = localStorage.getItem('themeColor') || 'default';
themeMode = localStorage.getItem('themeMode') || 'auto';
systemIsDarkMode = localStorage.getItem('systemIsDarkMode') === 'true';
customThemes = JSON.parse(localStorage.getItem('customThemes') || '[]');
systemIsDarkMode = window.matchMedia('(prefers-color-scheme: dark)').matches;
}
const isDarkMode = themeMode === 'dark' || (themeMode === 'auto' && systemIsDarkMode);
let currentTheme = themes.find((theme) => theme.name === themeColor);