fix(ui): 修复主题切换功能,支持明暗主题动态切换

- 替换所有硬编码颜色为动态颜色
- 所有页面使用 Theme.of(context) 获取主题颜色
- 支持深色和浅色主题切换
- 修复 GlassPanel 和 NeonGlow 组件的主题适配
- 完善 lightMaterial ColorScheme 定义
- 测试主题切换功能正常

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-24 02:50:25 +08:00
parent 7bb426b3d8
commit a65aa0fa86
94 changed files with 17889 additions and 17478 deletions

View File

@@ -309,23 +309,54 @@ class AppColorScheme {
// Material ColorScheme - 浅色主题
// ============================================
/// 浅色主题 Error 色
static const Color lightError = Color(0xFFd7383b);
static const Color lightOnError = Color(0xFFFFFFFF);
/// 浅色主题 Outline 色
static const Color lightOutline = Color(0xFF73757d);
/// 浅色主题 Surface 色 (扩展)
static const Color lightSurfaceBright = Color(0xFFffffff);
static const Color lightSurfaceDim = Color(0xFFe8ebef);
static const Color lightSurfaceVariant = Color(0xFFe8ebef);
static const Color lightSurfaceContainer = Color(0xFFf0f2f4);
static const Color lightSurfaceContainerHigh = Color(0xFFe8ebef);
static const Color lightSurfaceContainerHighest = Color(0xFFd9dde0);
static ColorScheme get lightMaterial => ColorScheme.light(
primary: lightPrimary,
onPrimary: const Color(0xFFFFFFFF),
primaryContainer: lightPrimaryContainer,
onPrimaryContainer: lightOnSurface,
secondary: lightSecondary,
onSecondary: const Color(0xFFFFFFFF),
secondaryContainer: lightSecondaryContainer,
onSecondaryContainer: lightOnSurface,
tertiary: lightTertiary,
onTertiary: const Color(0xFFFFFFFF),
error: error,
onError: const Color(0xFFFFFFFF),
tertiaryContainer: lightTertiaryContainer,
onTertiaryContainer: lightOnSurface,
error: lightError,
onError: lightOnError,
errorContainer: const Color(0xFFffeaea),
onErrorContainer: const Color(0xFF490006),
surface: lightSurface,
onSurface: lightOnSurface,
surfaceDim: lightSurfaceDim,
surfaceBright: lightSurfaceBright,
surfaceContainerLowest: lightSurfaceLowest,
surfaceContainerLow: lightSurfaceLow,
surfaceContainer: lightSurface,
surfaceContainerHigh: lightSurfaceHigh,
surfaceContainerHighest: lightSurfaceHighest,
surfaceContainer: lightSurfaceContainer,
surfaceContainerHigh: lightSurfaceContainerHigh,
surfaceContainerHighest: lightSurfaceContainerHighest,
onSurfaceVariant: lightOnSurfaceVariant,
outline: lightOutline,
outlineVariant: lightOutlineVariant,
inverseSurface: const Color(0xFF1c2028),
onInverseSurface: const Color(0xFFecedf6),
inversePrimary: darkPrimary,
surfaceTint: lightPrimary,
);
// ============================================