Refactor themes to use shared AppThemeBase style

This commit is contained in:
2dust
2026-01-09 18:11:36 +08:00
parent 545683c9ba
commit a87d5d375b
2 changed files with 16 additions and 49 deletions
@@ -1,54 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools">
<style name="AppThemeDayNight" parent="Theme.Material3.DayNight">
<!-- Primary colors - main tone: gray -->
<item name="colorPrimary">@color/md_theme_primary</item>
<item name="colorOnPrimary">@color/md_theme_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_primaryContainer</item>
<item name="colorOnPrimaryContainer">@color/md_theme_onPrimaryContainer</item>
<!-- Secondary colors - accent color: orange -->
<item name="colorSecondary">@color/md_theme_secondary</item>
<item name="colorOnSecondary">@color/md_theme_onSecondary</item>
<item name="colorSecondaryContainer">@color/md_theme_secondaryContainer</item>
<item name="colorOnSecondaryContainer">@color/md_theme_onSecondaryContainer</item>
<!-- Tertiary colors - tertiary color: green -->
<item name="colorTertiary">@color/md_theme_tertiary</item>
<item name="colorOnTertiary">@color/md_theme_onTertiary</item>
<item name="colorTertiaryContainer">@color/md_theme_tertiaryContainer</item>
<item name="colorOnTertiaryContainer">@color/md_theme_onTertiaryContainer</item>
<!-- Error colors -->
<item name="colorError">@color/md_theme_error</item>
<item name="colorOnError">@color/md_theme_onError</item>
<item name="colorErrorContainer">@color/md_theme_errorContainer</item>
<item name="colorOnErrorContainer">@color/md_theme_onErrorContainer</item>
<!-- Surface colors -->
<item name="colorSurface">@color/md_theme_surface</item>
<item name="colorOnSurface">@color/md_theme_onSurface</item>
<item name="colorSurfaceVariant">@color/md_theme_surfaceVariant</item>
<item name="colorOnSurfaceVariant">@color/md_theme_onSurfaceVariant</item>
<item name="colorSurfaceInverse">@color/md_theme_inverseSurface</item>
<item name="colorOnSurfaceInverse">@color/md_theme_inverseOnSurface</item>
<!-- Background colors -->
<item name="android:colorBackground">@color/md_theme_background</item>
<item name="colorOnBackground">@color/md_theme_onBackground</item>
<!-- Outline colors -->
<item name="colorOutline">@color/md_theme_outline</item>
<item name="colorOutlineVariant">@color/md_theme_outlineVariant</item>
<!-- Other colors -->
<item name="colorPrimaryInverse">@color/md_theme_inversePrimary</item>
<!-- Status bar and navigation bar - system bars (dark mode) -->
<item name="android:statusBarColor">@color/md_theme_surface</item>
<item name="android:navigationBarColor">@color/md_theme_surface</item>
<!-- Night theme: inherit the shared AppThemeBase and only override night-specific items -->
<style name="AppThemeDayNight" parent="AppThemeBase">
<!-- Night mode specific overrides -->
<item name="android:windowLightStatusBar">false</item>
<item name="android:windowLightNavigationBar" tools:targetApi="27">false</item>
</style>
</resources>
+12 -2
View File
@@ -1,7 +1,7 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- MD3 Light Theme - base theme, uses DayNight for automatic switching -->
<style name="AppThemeDayNight" parent="Theme.Material3.DayNight">
<!-- Common base theme: put all shared items here so day/night can reuse -->
<style name="AppThemeBase" parent="Theme.Material3.DayNight">
<!-- Primary colors - main tone: black -->
<item name="colorPrimary">@color/md_theme_primary</item>
<item name="colorOnPrimary">@color/md_theme_onPrimary</item>
@@ -33,6 +33,11 @@
<item name="colorOnSurfaceVariant">@color/md_theme_onSurfaceVariant</item>
<item name="colorSurfaceInverse">@color/md_theme_inverseSurface</item>
<item name="colorOnSurfaceInverse">@color/md_theme_inverseOnSurface</item>
<item name="colorSurfaceContainer">@color/md_theme_surface</item>
<item name="colorSurfaceContainerHigh">@color/md_theme_surface</item>
<item name="colorSurfaceContainerHighest">@color/md_theme_surface</item>
<item name="colorSurfaceContainerLow">@color/md_theme_surface</item>
<item name="colorSurfaceContainerLowest">@color/md_theme_surface</item>
<!-- Background colors -->
<item name="android:colorBackground">@color/md_theme_background</item>
@@ -48,6 +53,11 @@
<!-- Status bar and navigation bar - system bars -->
<item name="android:statusBarColor">@color/md_theme_surface</item>
<item name="android:navigationBarColor">@color/md_theme_surface</item>
</style>
<!-- Day/Night theme: inherit common values and set light-mode-specific items -->
<style name="AppThemeDayNight" parent="AppThemeBase">
<!-- day/night-specific overrides (light/default) -->
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowLightNavigationBar" tools:targetApi="27">true</item>
</style>