File tree Expand file tree Collapse file tree
wind_setting/frontend/src Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -600,6 +600,19 @@ async function onThemeStyleChange(_themeStyle: string) {
600600 }
601601}
602602
603+ // 系统外观变化时, 若用户选择"跟随系统", 同步刷新主题预览
604+ // (后端 GetThemePreview 在 themeStyle="system" 时按调用时刻的系统色读取)
605+ const systemDarkMql =
606+ typeof window !== " undefined"
607+ ? window .matchMedia (" (prefers-color-scheme: dark)" )
608+ : null ;
609+ async function handleSystemThemeChange() {
610+ const style = formData .value .ui .theme_style || " system" ;
611+ if (style !== " system" ) return ;
612+ if (! formData .value .ui .theme ) return ;
613+ await loadThemePreview (formData .value .ui .theme );
614+ }
615+
603616// 外部链接和工具
604617async function handleOpenLogFolder() {
605618 try {
@@ -688,13 +701,17 @@ onMounted(async () => {
688701 Show ();
689702 } catch {}
690703 });
704+
705+ // 监听系统外观变化, 跟随系统模式下刷新主题预览
706+ systemDarkMql ?.addEventListener (" change" , handleSystemThemeChange );
691707 }
692708});
693709
694710onUnmounted (() => {
695711 offConfigEvent ();
696712 EventsOff (" navigate" );
697713 EventsOff (" navigate-addword" );
714+ systemDarkMql ?.removeEventListener (" change" , handleSystemThemeChange );
698715});
699716 </script >
700717
You can’t perform that action at this time.
0 commit comments