Add multiple color scheme
This commit is contained in:
parent
1fbb079e92
commit
9bf93ebc11
|
@ -1,62 +0,0 @@
|
||||||
package me.ash.reader.ui.theme
|
|
||||||
|
|
||||||
import androidx.compose.ui.graphics.Color
|
|
||||||
|
|
||||||
val md_theme_light_primary = Color(0xFF00658e)
|
|
||||||
val md_theme_light_onPrimary = Color(0xFFffffff)
|
|
||||||
val md_theme_light_primaryContainer = Color(0xFFc3e7ff)
|
|
||||||
val md_theme_light_onPrimaryContainer = Color(0xFF001e2e)
|
|
||||||
val md_theme_light_secondary = Color(0xFF4f616e)
|
|
||||||
val md_theme_light_onSecondary = Color(0xFFffffff)
|
|
||||||
val md_theme_light_secondaryContainer = Color(0xFFd2e5f4)
|
|
||||||
val md_theme_light_onSecondaryContainer = Color(0xFF0b1d28)
|
|
||||||
val md_theme_light_tertiary = Color(0xFF625a7c)
|
|
||||||
val md_theme_light_onTertiary = Color(0xFFffffff)
|
|
||||||
val md_theme_light_tertiaryContainer = Color(0xFFe8ddff)
|
|
||||||
val md_theme_light_onTertiaryContainer = Color(0xFF1e1735)
|
|
||||||
val md_theme_light_error = Color(0xFFba1b1b)
|
|
||||||
val md_theme_light_errorContainer = Color(0xFFffdad4)
|
|
||||||
val md_theme_light_onError = Color(0xFFffffff)
|
|
||||||
val md_theme_light_onErrorContainer = Color(0xFF410001)
|
|
||||||
val md_theme_light_background = Color(0xFFfbfcff)
|
|
||||||
val md_theme_light_onBackground = Color(0xFF191c1e)
|
|
||||||
val md_theme_light_surface = Color(0xFFfbfcff)
|
|
||||||
val md_theme_light_onSurface = Color(0xFF191c1e)
|
|
||||||
val md_theme_light_surfaceVariant = Color(0xFFdde3ea)
|
|
||||||
val md_theme_light_onSurfaceVariant = Color(0xFF41484d)
|
|
||||||
val md_theme_light_outline = Color(0xFF71787e)
|
|
||||||
val md_theme_light_inverseOnSurface = Color(0xFFf0f1f4)
|
|
||||||
val md_theme_light_inverseSurface = Color(0xFF2e3133)
|
|
||||||
val md_theme_light_inversePrimary = Color(0xFF7fcfff)
|
|
||||||
val md_theme_light_shadow = Color(0xFF000000)
|
|
||||||
|
|
||||||
val md_theme_dark_primary = Color(0xFF7fcfff)
|
|
||||||
val md_theme_dark_onPrimary = Color(0xFF00344b)
|
|
||||||
val md_theme_dark_primaryContainer = Color(0xFF004c6c)
|
|
||||||
val md_theme_dark_onPrimaryContainer = Color(0xFFc3e7ff)
|
|
||||||
val md_theme_dark_secondary = Color(0xFFb6c9d8)
|
|
||||||
val md_theme_dark_onSecondary = Color(0xFF21333e)
|
|
||||||
val md_theme_dark_secondaryContainer = Color(0xFF374955)
|
|
||||||
val md_theme_dark_onSecondaryContainer = Color(0xFFd2e5f4)
|
|
||||||
val md_theme_dark_tertiary = Color(0xFFccc1e9)
|
|
||||||
val md_theme_dark_onTertiary = Color(0xFF332c4b)
|
|
||||||
val md_theme_dark_tertiaryContainer = Color(0xFF4a4263)
|
|
||||||
val md_theme_dark_onTertiaryContainer = Color(0xFFe8ddff)
|
|
||||||
val md_theme_dark_error = Color(0xFFffb4a9)
|
|
||||||
val md_theme_dark_errorContainer = Color(0xFF930006)
|
|
||||||
val md_theme_dark_onError = Color(0xFF680003)
|
|
||||||
val md_theme_dark_onErrorContainer = Color(0xFFffdad4)
|
|
||||||
val md_theme_dark_background = Color(0xFF191c1e)
|
|
||||||
val md_theme_dark_onBackground = Color(0xFFe1e2e5)
|
|
||||||
val md_theme_dark_surface = Color(0xFF191c1e)
|
|
||||||
val md_theme_dark_onSurface = Color(0xFFe1e2e5)
|
|
||||||
val md_theme_dark_surfaceVariant = Color(0xFF41484d)
|
|
||||||
val md_theme_dark_onSurfaceVariant = Color(0xFFc1c7ce)
|
|
||||||
val md_theme_dark_outline = Color(0xFF8b9298)
|
|
||||||
val md_theme_dark_inverseOnSurface = Color(0xFF191c1e)
|
|
||||||
val md_theme_dark_inverseSurface = Color(0xFFe1e2e5)
|
|
||||||
val md_theme_dark_inversePrimary = Color(0xFF00658e)
|
|
||||||
val md_theme_dark_shadow = Color(0xFF000000)
|
|
||||||
|
|
||||||
val seed = Color(0xFF006187)
|
|
||||||
val error = Color(0xFFba1b1b)
|
|
|
@ -2,76 +2,19 @@ package me.ash.reader.ui.theme
|
||||||
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import androidx.compose.foundation.isSystemInDarkTheme
|
import androidx.compose.foundation.isSystemInDarkTheme
|
||||||
import androidx.compose.material3.*
|
import androidx.compose.material3.MaterialTheme
|
||||||
|
import androidx.compose.material3.dynamicDarkColorScheme
|
||||||
|
import androidx.compose.material3.dynamicLightColorScheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.CompositionLocalProvider
|
import androidx.compose.runtime.CompositionLocalProvider
|
||||||
import androidx.compose.runtime.staticCompositionLocalOf
|
import androidx.compose.runtime.staticCompositionLocalOf
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
|
import me.ash.reader.ui.theme.color.PurpleColor
|
||||||
|
|
||||||
private val LightThemeColors = lightColorScheme(
|
private val LightThemeColors = PurpleColor.lightColorScheme
|
||||||
|
private val DarkThemeColors = PurpleColor.darkColorScheme
|
||||||
primary = md_theme_light_primary,
|
|
||||||
onPrimary = md_theme_light_onPrimary,
|
|
||||||
primaryContainer = md_theme_light_primaryContainer,
|
|
||||||
onPrimaryContainer = md_theme_light_onPrimaryContainer,
|
|
||||||
secondary = md_theme_light_secondary,
|
|
||||||
onSecondary = md_theme_light_onSecondary,
|
|
||||||
secondaryContainer = md_theme_light_secondaryContainer,
|
|
||||||
onSecondaryContainer = md_theme_light_onSecondaryContainer,
|
|
||||||
tertiary = md_theme_light_tertiary,
|
|
||||||
onTertiary = md_theme_light_onTertiary,
|
|
||||||
tertiaryContainer = md_theme_light_tertiaryContainer,
|
|
||||||
onTertiaryContainer = md_theme_light_onTertiaryContainer,
|
|
||||||
error = md_theme_light_error,
|
|
||||||
errorContainer = md_theme_light_errorContainer,
|
|
||||||
onError = md_theme_light_onError,
|
|
||||||
onErrorContainer = md_theme_light_onErrorContainer,
|
|
||||||
background = md_theme_light_background,
|
|
||||||
onBackground = md_theme_light_onBackground,
|
|
||||||
surface = md_theme_light_surface,
|
|
||||||
onSurface = md_theme_light_onSurface,
|
|
||||||
surfaceVariant = md_theme_light_surfaceVariant,
|
|
||||||
onSurfaceVariant = md_theme_light_onSurfaceVariant,
|
|
||||||
outline = md_theme_light_outline,
|
|
||||||
inverseOnSurface = md_theme_light_inverseOnSurface,
|
|
||||||
inverseSurface = md_theme_light_inverseSurface,
|
|
||||||
inversePrimary = md_theme_light_inversePrimary,
|
|
||||||
// shadow = md_theme_light_shadow,
|
|
||||||
)
|
|
||||||
|
|
||||||
private val DarkThemeColors = darkColorScheme(
|
|
||||||
|
|
||||||
primary = md_theme_dark_primary,
|
|
||||||
onPrimary = md_theme_dark_onPrimary,
|
|
||||||
primaryContainer = md_theme_dark_primaryContainer,
|
|
||||||
onPrimaryContainer = md_theme_dark_onPrimaryContainer,
|
|
||||||
secondary = md_theme_dark_secondary,
|
|
||||||
onSecondary = md_theme_dark_onSecondary,
|
|
||||||
secondaryContainer = md_theme_dark_secondaryContainer,
|
|
||||||
onSecondaryContainer = md_theme_dark_onSecondaryContainer,
|
|
||||||
tertiary = md_theme_dark_tertiary,
|
|
||||||
onTertiary = md_theme_dark_onTertiary,
|
|
||||||
tertiaryContainer = md_theme_dark_tertiaryContainer,
|
|
||||||
onTertiaryContainer = md_theme_dark_onTertiaryContainer,
|
|
||||||
error = md_theme_dark_error,
|
|
||||||
errorContainer = md_theme_dark_errorContainer,
|
|
||||||
onError = md_theme_dark_onError,
|
|
||||||
onErrorContainer = md_theme_dark_onErrorContainer,
|
|
||||||
background = md_theme_dark_background,
|
|
||||||
onBackground = md_theme_dark_onBackground,
|
|
||||||
surface = md_theme_dark_surface,
|
|
||||||
onSurface = md_theme_dark_onSurface,
|
|
||||||
surfaceVariant = md_theme_dark_surfaceVariant,
|
|
||||||
onSurfaceVariant = md_theme_dark_onSurfaceVariant,
|
|
||||||
outline = md_theme_dark_outline,
|
|
||||||
inverseOnSurface = md_theme_dark_inverseOnSurface,
|
|
||||||
inverseSurface = md_theme_dark_inverseSurface,
|
|
||||||
inversePrimary = md_theme_dark_inversePrimary,
|
|
||||||
// shadow = md_theme_dark_shadow,
|
|
||||||
)
|
|
||||||
|
|
||||||
val LocalLightThemeColors = staticCompositionLocalOf { LightThemeColors }
|
val LocalLightThemeColors = staticCompositionLocalOf { LightThemeColors }
|
||||||
|
|
||||||
val LocalDarkThemeColors = staticCompositionLocalOf { DarkThemeColors }
|
val LocalDarkThemeColors = staticCompositionLocalOf { DarkThemeColors }
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
@ -81,6 +24,7 @@ fun AppTheme(
|
||||||
) {
|
) {
|
||||||
// Dynamic color is available on Android 12+
|
// Dynamic color is available on Android 12+
|
||||||
val dynamicColor = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S
|
val dynamicColor = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S
|
||||||
|
|
||||||
val light = when {
|
val light = when {
|
||||||
dynamicColor -> dynamicLightColorScheme(LocalContext.current)
|
dynamicColor -> dynamicLightColorScheme(LocalContext.current)
|
||||||
else -> LightThemeColors
|
else -> LightThemeColors
|
||||||
|
|
118
app/src/main/java/me/ash/reader/ui/theme/color/BlueColor.kt
Normal file
118
app/src/main/java/me/ash/reader/ui/theme/color/BlueColor.kt
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
package me.ash.reader.ui.theme.color
|
||||||
|
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
|
||||||
|
object BlueColor : IColor {
|
||||||
|
override val md_theme_light_primary: Color
|
||||||
|
get() = Color(0xFF00658e)
|
||||||
|
override val md_theme_light_onPrimary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_primaryContainer: Color
|
||||||
|
get() = Color(0xFFc3e7ff)
|
||||||
|
override val md_theme_light_onPrimaryContainer: Color
|
||||||
|
get() = Color(0xFF001e2e)
|
||||||
|
override val md_theme_light_secondary: Color
|
||||||
|
get() = Color(0xFF4f616e)
|
||||||
|
override val md_theme_light_onSecondary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_secondaryContainer: Color
|
||||||
|
get() = Color(0xFFd2e5f4)
|
||||||
|
override val md_theme_light_onSecondaryContainer: Color
|
||||||
|
get() = Color(0xFF0b1d28)
|
||||||
|
override val md_theme_light_tertiary: Color
|
||||||
|
get() = Color(0xFF625a7c)
|
||||||
|
override val md_theme_light_onTertiary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_tertiaryContainer: Color
|
||||||
|
get() = Color(0xFFe8ddff)
|
||||||
|
override val md_theme_light_onTertiaryContainer: Color
|
||||||
|
get() = Color(0xFF1e1735)
|
||||||
|
override val md_theme_light_error: Color
|
||||||
|
get() = Color(0xFFba1b1b)
|
||||||
|
override val md_theme_light_errorContainer: Color
|
||||||
|
get() = Color(0xFFffdad4)
|
||||||
|
override val md_theme_light_onError: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_onErrorContainer: Color
|
||||||
|
get() = Color(0xFF410001)
|
||||||
|
override val md_theme_light_background: Color
|
||||||
|
get() = Color(0xFFfbfcff)
|
||||||
|
override val md_theme_light_onBackground: Color
|
||||||
|
get() = Color(0xFF191c1e)
|
||||||
|
override val md_theme_light_surface: Color
|
||||||
|
get() = Color(0xFFfbfcff)
|
||||||
|
override val md_theme_light_onSurface: Color
|
||||||
|
get() = Color(0xFF191c1e)
|
||||||
|
override val md_theme_light_surfaceVariant: Color
|
||||||
|
get() = Color(0xFFdde3ea)
|
||||||
|
override val md_theme_light_onSurfaceVariant: Color
|
||||||
|
get() = Color(0xFF41484d)
|
||||||
|
override val md_theme_light_outline: Color
|
||||||
|
get() = Color(0xFF71787e)
|
||||||
|
override val md_theme_light_inverseOnSurface: Color
|
||||||
|
get() = Color(0xFFf0f1f4)
|
||||||
|
override val md_theme_light_inverseSurface: Color
|
||||||
|
get() = Color(0xFF2e3133)
|
||||||
|
override val md_theme_light_inversePrimary: Color
|
||||||
|
get() = Color(0xFF7fcfff)
|
||||||
|
override val md_theme_light_shadow: Color
|
||||||
|
get() = Color(0xFF000000)
|
||||||
|
override val md_theme_dark_primary: Color
|
||||||
|
get() = Color(0xFF7fcfff)
|
||||||
|
override val md_theme_dark_onPrimary: Color
|
||||||
|
get() = Color(0xFF00344b)
|
||||||
|
override val md_theme_dark_primaryContainer: Color
|
||||||
|
get() = Color(0xFF004c6c)
|
||||||
|
override val md_theme_dark_onPrimaryContainer: Color
|
||||||
|
get() = Color(0xFFc3e7ff)
|
||||||
|
override val md_theme_dark_secondary: Color
|
||||||
|
get() = Color(0xFFb6c9d8)
|
||||||
|
override val md_theme_dark_onSecondary: Color
|
||||||
|
get() = Color(0xFF21333e)
|
||||||
|
override val md_theme_dark_secondaryContainer: Color
|
||||||
|
get() = Color(0xFF374955)
|
||||||
|
override val md_theme_dark_onSecondaryContainer: Color
|
||||||
|
get() = Color(0xFFd2e5f4)
|
||||||
|
override val md_theme_dark_tertiary: Color
|
||||||
|
get() = Color(0xFFccc1e9)
|
||||||
|
override val md_theme_dark_onTertiary: Color
|
||||||
|
get() = Color(0xFF332c4b)
|
||||||
|
override val md_theme_dark_tertiaryContainer: Color
|
||||||
|
get() = Color(0xFF4a4263)
|
||||||
|
override val md_theme_dark_onTertiaryContainer: Color
|
||||||
|
get() = Color(0xFFe8ddff)
|
||||||
|
override val md_theme_dark_error: Color
|
||||||
|
get() = Color(0xFFffb4a9)
|
||||||
|
override val md_theme_dark_errorContainer: Color
|
||||||
|
get() = Color(0xFF930006)
|
||||||
|
override val md_theme_dark_onError: Color
|
||||||
|
get() = Color(0xFF680003)
|
||||||
|
override val md_theme_dark_onErrorContainer: Color
|
||||||
|
get() = Color(0xFFffdad4)
|
||||||
|
override val md_theme_dark_background: Color
|
||||||
|
get() = Color(0xFF191c1e)
|
||||||
|
override val md_theme_dark_onBackground: Color
|
||||||
|
get() = Color(0xFFe1e2e5)
|
||||||
|
override val md_theme_dark_surface: Color
|
||||||
|
get() = Color(0xFF191c1e)
|
||||||
|
override val md_theme_dark_onSurface: Color
|
||||||
|
get() = Color(0xFFe1e2e5)
|
||||||
|
override val md_theme_dark_surfaceVariant: Color
|
||||||
|
get() = Color(0xFF41484d)
|
||||||
|
override val md_theme_dark_onSurfaceVariant: Color
|
||||||
|
get() = Color(0xFFc1c7ce)
|
||||||
|
override val md_theme_dark_outline: Color
|
||||||
|
get() = Color(0xFF8b9298)
|
||||||
|
override val md_theme_dark_inverseOnSurface: Color
|
||||||
|
get() = Color(0xFF191c1e)
|
||||||
|
override val md_theme_dark_inverseSurface: Color
|
||||||
|
get() = Color(0xFFe1e2e5)
|
||||||
|
override val md_theme_dark_inversePrimary: Color
|
||||||
|
get() = Color(0xFF00658e)
|
||||||
|
override val md_theme_dark_shadow: Color
|
||||||
|
get() = Color(0xFF000000)
|
||||||
|
override val seed: Color
|
||||||
|
get() = Color(0xFF006187)
|
||||||
|
override val error: Color
|
||||||
|
get() = Color(0xFFba1b1b)
|
||||||
|
}
|
127
app/src/main/java/me/ash/reader/ui/theme/color/IColor.kt
Normal file
127
app/src/main/java/me/ash/reader/ui/theme/color/IColor.kt
Normal file
|
@ -0,0 +1,127 @@
|
||||||
|
package me.ash.reader.ui.theme.color
|
||||||
|
|
||||||
|
import androidx.compose.material3.ColorScheme
|
||||||
|
import androidx.compose.material3.darkColorScheme
|
||||||
|
import androidx.compose.material3.lightColorScheme
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
|
||||||
|
interface IColor {
|
||||||
|
val md_theme_light_primary: Color
|
||||||
|
val md_theme_light_onPrimary: Color
|
||||||
|
val md_theme_light_primaryContainer: Color
|
||||||
|
val md_theme_light_onPrimaryContainer: Color
|
||||||
|
val md_theme_light_secondary: Color
|
||||||
|
val md_theme_light_onSecondary: Color
|
||||||
|
val md_theme_light_secondaryContainer: Color
|
||||||
|
val md_theme_light_onSecondaryContainer: Color
|
||||||
|
val md_theme_light_tertiary: Color
|
||||||
|
val md_theme_light_onTertiary: Color
|
||||||
|
val md_theme_light_tertiaryContainer: Color
|
||||||
|
val md_theme_light_onTertiaryContainer: Color
|
||||||
|
val md_theme_light_error: Color
|
||||||
|
val md_theme_light_errorContainer: Color
|
||||||
|
val md_theme_light_onError: Color
|
||||||
|
val md_theme_light_onErrorContainer: Color
|
||||||
|
val md_theme_light_background: Color
|
||||||
|
val md_theme_light_onBackground: Color
|
||||||
|
val md_theme_light_surface: Color
|
||||||
|
val md_theme_light_onSurface: Color
|
||||||
|
val md_theme_light_surfaceVariant: Color
|
||||||
|
val md_theme_light_onSurfaceVariant: Color
|
||||||
|
val md_theme_light_outline: Color
|
||||||
|
val md_theme_light_inverseOnSurface: Color
|
||||||
|
val md_theme_light_inverseSurface: Color
|
||||||
|
val md_theme_light_inversePrimary: Color
|
||||||
|
val md_theme_light_shadow: Color
|
||||||
|
|
||||||
|
val md_theme_dark_primary: Color
|
||||||
|
val md_theme_dark_onPrimary: Color
|
||||||
|
val md_theme_dark_primaryContainer: Color
|
||||||
|
val md_theme_dark_onPrimaryContainer: Color
|
||||||
|
val md_theme_dark_secondary: Color
|
||||||
|
val md_theme_dark_onSecondary: Color
|
||||||
|
val md_theme_dark_secondaryContainer: Color
|
||||||
|
val md_theme_dark_onSecondaryContainer: Color
|
||||||
|
val md_theme_dark_tertiary: Color
|
||||||
|
val md_theme_dark_onTertiary: Color
|
||||||
|
val md_theme_dark_tertiaryContainer: Color
|
||||||
|
val md_theme_dark_onTertiaryContainer: Color
|
||||||
|
val md_theme_dark_error: Color
|
||||||
|
val md_theme_dark_errorContainer: Color
|
||||||
|
val md_theme_dark_onError: Color
|
||||||
|
val md_theme_dark_onErrorContainer: Color
|
||||||
|
val md_theme_dark_background: Color
|
||||||
|
val md_theme_dark_onBackground: Color
|
||||||
|
val md_theme_dark_surface: Color
|
||||||
|
val md_theme_dark_onSurface: Color
|
||||||
|
val md_theme_dark_surfaceVariant: Color
|
||||||
|
val md_theme_dark_onSurfaceVariant: Color
|
||||||
|
val md_theme_dark_outline: Color
|
||||||
|
val md_theme_dark_inverseOnSurface: Color
|
||||||
|
val md_theme_dark_inverseSurface: Color
|
||||||
|
val md_theme_dark_inversePrimary: Color
|
||||||
|
val md_theme_dark_shadow: Color
|
||||||
|
|
||||||
|
val seed: Color
|
||||||
|
val error: Color
|
||||||
|
|
||||||
|
val lightColorScheme: ColorScheme
|
||||||
|
get() = lightColorScheme(
|
||||||
|
primary = md_theme_light_primary,
|
||||||
|
onPrimary = md_theme_light_onPrimary,
|
||||||
|
primaryContainer = md_theme_light_primaryContainer,
|
||||||
|
onPrimaryContainer = md_theme_light_onPrimaryContainer,
|
||||||
|
secondary = md_theme_light_secondary,
|
||||||
|
onSecondary = md_theme_light_onSecondary,
|
||||||
|
secondaryContainer = md_theme_light_secondaryContainer,
|
||||||
|
onSecondaryContainer = md_theme_light_onSecondaryContainer,
|
||||||
|
tertiary = md_theme_light_tertiary,
|
||||||
|
onTertiary = md_theme_light_onTertiary,
|
||||||
|
tertiaryContainer = md_theme_light_tertiaryContainer,
|
||||||
|
onTertiaryContainer = md_theme_light_onTertiaryContainer,
|
||||||
|
error = md_theme_light_error,
|
||||||
|
errorContainer = md_theme_light_errorContainer,
|
||||||
|
onError = md_theme_light_onError,
|
||||||
|
onErrorContainer = md_theme_light_onErrorContainer,
|
||||||
|
background = md_theme_light_background,
|
||||||
|
onBackground = md_theme_light_onBackground,
|
||||||
|
surface = md_theme_light_surface,
|
||||||
|
onSurface = md_theme_light_onSurface,
|
||||||
|
surfaceVariant = md_theme_light_surfaceVariant,
|
||||||
|
onSurfaceVariant = md_theme_light_onSurfaceVariant,
|
||||||
|
outline = md_theme_light_outline,
|
||||||
|
inverseOnSurface = md_theme_light_inverseOnSurface,
|
||||||
|
inverseSurface = md_theme_light_inverseSurface,
|
||||||
|
inversePrimary = md_theme_light_inversePrimary,
|
||||||
|
)
|
||||||
|
|
||||||
|
val darkColorScheme: ColorScheme
|
||||||
|
get() = darkColorScheme(
|
||||||
|
primary = md_theme_dark_primary,
|
||||||
|
onPrimary = md_theme_dark_onPrimary,
|
||||||
|
primaryContainer = md_theme_dark_primaryContainer,
|
||||||
|
onPrimaryContainer = md_theme_dark_onPrimaryContainer,
|
||||||
|
secondary = md_theme_dark_secondary,
|
||||||
|
onSecondary = md_theme_dark_onSecondary,
|
||||||
|
secondaryContainer = md_theme_dark_secondaryContainer,
|
||||||
|
onSecondaryContainer = md_theme_dark_onSecondaryContainer,
|
||||||
|
tertiary = md_theme_dark_tertiary,
|
||||||
|
onTertiary = md_theme_dark_onTertiary,
|
||||||
|
tertiaryContainer = md_theme_dark_tertiaryContainer,
|
||||||
|
onTertiaryContainer = md_theme_dark_onTertiaryContainer,
|
||||||
|
error = md_theme_dark_error,
|
||||||
|
errorContainer = md_theme_dark_errorContainer,
|
||||||
|
onError = md_theme_dark_onError,
|
||||||
|
onErrorContainer = md_theme_dark_onErrorContainer,
|
||||||
|
background = md_theme_dark_background,
|
||||||
|
onBackground = md_theme_dark_onBackground,
|
||||||
|
surface = md_theme_dark_surface,
|
||||||
|
onSurface = md_theme_dark_onSurface,
|
||||||
|
surfaceVariant = md_theme_dark_surfaceVariant,
|
||||||
|
onSurfaceVariant = md_theme_dark_onSurfaceVariant,
|
||||||
|
outline = md_theme_dark_outline,
|
||||||
|
inverseOnSurface = md_theme_dark_inverseOnSurface,
|
||||||
|
inverseSurface = md_theme_dark_inverseSurface,
|
||||||
|
inversePrimary = md_theme_dark_inversePrimary,
|
||||||
|
)
|
||||||
|
}
|
118
app/src/main/java/me/ash/reader/ui/theme/color/PurpleColor.kt
Normal file
118
app/src/main/java/me/ash/reader/ui/theme/color/PurpleColor.kt
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
package me.ash.reader.ui.theme.color
|
||||||
|
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
|
||||||
|
object PurpleColor : IColor {
|
||||||
|
override val md_theme_light_primary: Color
|
||||||
|
get() = Color(0xFF5f51ac)
|
||||||
|
override val md_theme_light_onPrimary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_primaryContainer: Color
|
||||||
|
get() = Color(0xFFe6deff)
|
||||||
|
override val md_theme_light_onPrimaryContainer: Color
|
||||||
|
get() = Color(0xFF190065)
|
||||||
|
override val md_theme_light_secondary: Color
|
||||||
|
get() = Color(0xFF605c72)
|
||||||
|
override val md_theme_light_onSecondary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_secondaryContainer: Color
|
||||||
|
get() = Color(0xFFe5dff9)
|
||||||
|
override val md_theme_light_onSecondaryContainer: Color
|
||||||
|
get() = Color(0xFF1c192c)
|
||||||
|
override val md_theme_light_tertiary: Color
|
||||||
|
get() = Color(0xFF7c5264)
|
||||||
|
override val md_theme_light_onTertiary: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_tertiaryContainer: Color
|
||||||
|
get() = Color(0xFFffd8e8)
|
||||||
|
override val md_theme_light_onTertiaryContainer: Color
|
||||||
|
get() = Color(0xFF301020)
|
||||||
|
override val md_theme_light_error: Color
|
||||||
|
get() = Color(0xFFba1b1b)
|
||||||
|
override val md_theme_light_errorContainer: Color
|
||||||
|
get() = Color(0xFFffdad4)
|
||||||
|
override val md_theme_light_onError: Color
|
||||||
|
get() = Color(0xFFffffff)
|
||||||
|
override val md_theme_light_onErrorContainer: Color
|
||||||
|
get() = Color(0xFF410001)
|
||||||
|
override val md_theme_light_background: Color
|
||||||
|
get() = Color(0xFFfffbff)
|
||||||
|
override val md_theme_light_onBackground: Color
|
||||||
|
get() = Color(0xFF1c1b1e)
|
||||||
|
override val md_theme_light_surface: Color
|
||||||
|
get() = Color(0xFFfffbff)
|
||||||
|
override val md_theme_light_onSurface: Color
|
||||||
|
get() = Color(0xFF1c1b1e)
|
||||||
|
override val md_theme_light_surfaceVariant: Color
|
||||||
|
get() = Color(0xFFe5e0ec)
|
||||||
|
override val md_theme_light_onSurfaceVariant: Color
|
||||||
|
get() = Color(0xFF48454f)
|
||||||
|
override val md_theme_light_outline: Color
|
||||||
|
get() = Color(0xFF79767f)
|
||||||
|
override val md_theme_light_inverseOnSurface: Color
|
||||||
|
get() = Color(0xFFf4eff4)
|
||||||
|
override val md_theme_light_inverseSurface: Color
|
||||||
|
get() = Color(0xFF313033)
|
||||||
|
override val md_theme_light_inversePrimary: Color
|
||||||
|
get() = Color(0xFFcabeff)
|
||||||
|
override val md_theme_light_shadow: Color
|
||||||
|
get() = Color(0xFF000000)
|
||||||
|
override val md_theme_dark_primary: Color
|
||||||
|
get() = Color(0xFFcabeff)
|
||||||
|
override val md_theme_dark_onPrimary: Color
|
||||||
|
get() = Color(0xFF301f7a)
|
||||||
|
override val md_theme_dark_primaryContainer: Color
|
||||||
|
get() = Color(0xFF473892)
|
||||||
|
override val md_theme_dark_onPrimaryContainer: Color
|
||||||
|
get() = Color(0xFFe6deff)
|
||||||
|
override val md_theme_dark_secondary: Color
|
||||||
|
get() = Color(0xFFc9c3dc)
|
||||||
|
override val md_theme_dark_onSecondary: Color
|
||||||
|
get() = Color(0xFF312e41)
|
||||||
|
override val md_theme_dark_secondaryContainer: Color
|
||||||
|
get() = Color(0xFF484459)
|
||||||
|
override val md_theme_dark_onSecondaryContainer: Color
|
||||||
|
get() = Color(0xFFe5dff9)
|
||||||
|
override val md_theme_dark_tertiary: Color
|
||||||
|
get() = Color(0xFFedb8cd)
|
||||||
|
override val md_theme_dark_onTertiary: Color
|
||||||
|
get() = Color(0xFF492536)
|
||||||
|
override val md_theme_dark_tertiaryContainer: Color
|
||||||
|
get() = Color(0xFF613b4c)
|
||||||
|
override val md_theme_dark_onTertiaryContainer: Color
|
||||||
|
get() = Color(0xFFffd8e8)
|
||||||
|
override val md_theme_dark_error: Color
|
||||||
|
get() = Color(0xFFffb4a9)
|
||||||
|
override val md_theme_dark_errorContainer: Color
|
||||||
|
get() = Color(0xFF930006)
|
||||||
|
override val md_theme_dark_onError: Color
|
||||||
|
get() = Color(0xFF680003)
|
||||||
|
override val md_theme_dark_onErrorContainer: Color
|
||||||
|
get() = Color(0xFFffdad4)
|
||||||
|
override val md_theme_dark_background: Color
|
||||||
|
get() = Color(0xFF1c1b1e)
|
||||||
|
override val md_theme_dark_onBackground: Color
|
||||||
|
get() = Color(0xFFe5e1e5)
|
||||||
|
override val md_theme_dark_surface: Color
|
||||||
|
get() = Color(0xFF1c1b1e)
|
||||||
|
override val md_theme_dark_onSurface: Color
|
||||||
|
get() = Color(0xFFe5e1e5)
|
||||||
|
override val md_theme_dark_surfaceVariant: Color
|
||||||
|
get() = Color(0xFF48454f)
|
||||||
|
override val md_theme_dark_onSurfaceVariant: Color
|
||||||
|
get() = Color(0xFFc9c4d0)
|
||||||
|
override val md_theme_dark_outline: Color
|
||||||
|
get() = Color(0xFF938f99)
|
||||||
|
override val md_theme_dark_inverseOnSurface: Color
|
||||||
|
get() = Color(0xFF1c1b1e)
|
||||||
|
override val md_theme_dark_inverseSurface: Color
|
||||||
|
get() = Color(0xFFe5e1e5)
|
||||||
|
override val md_theme_dark_inversePrimary: Color
|
||||||
|
get() = Color(0xFF5f51ac)
|
||||||
|
override val md_theme_dark_shadow: Color
|
||||||
|
get() = Color(0xFF000000)
|
||||||
|
override val seed: Color
|
||||||
|
get() = Color(0xFF53459f)
|
||||||
|
override val error: Color
|
||||||
|
get() = Color(0xFFba1b1b)
|
||||||
|
}
|
|
@ -1,46 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<opml version="2.0">
|
|
||||||
<head>
|
|
||||||
<title>Ash</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<outline title="技术" text="技术">
|
|
||||||
<outline xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzUyNjQxNjYyMg==.xml" htmlUrl="http://MzUyNjQxNjYyMg.favicon.privacyhide.com/favicon.ico" text="五分钟学算法 | wechat-feeds" type="rss" title="五分钟学算法 | wechat-feeds" />
|
|
||||||
<outline htmlUrl="http://MzU0MDEwMjgwNA.favicon.privacyhide.com/favicon.ico" xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzU0MDEwMjgwNA==.xml" text="SpringForAll社区 | wechat-feeds" type="rss" title="SpringForAll社区 | wechat-feeds" />
|
|
||||||
<outline htmlUrl="https://tech.meituan.com/feed/" title="美团技术团队" type="rss" text="美团技术团队" xmlUrl="https://tech.meituan.com/feed/" />
|
|
||||||
<outline title="扔物线 | wechat-feeds" type="rss" text="扔物线 | wechat-feeds" htmlUrl="http://MzIwNTczNTY0NA.favicon.privacyhide.com/favicon.ico" xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzIwNTczNTY0NA==.xml" />
|
|
||||||
<outline text="伴鱼技术团队" title="伴鱼技术团队" type="rss" htmlUrl="https://tech.ipalfish.com/blog/atom.xml" xmlUrl="http://tech.ipalfish.com/blog/atom.xml" />
|
|
||||||
<outline text="博客园_编程大观园" type="rss" xmlUrl="http://feed.cnblogs.com/blog/u/201575/rss/" title="博客园_编程大观园" htmlUrl="http://feed.cnblogs.com" />
|
|
||||||
<outline xmlUrl="https://tech.youzan.com/rss/" title="有赞技术团队" type="rss" text="有赞技术团队" htmlUrl="https://tech.youzan.com" />
|
|
||||||
<outline text="eBay技术荟 | wechat-feeds" htmlUrl="http://MzA3MDMyNDUzOQ.favicon.privacyhide.com/favicon.ico" type="rss" title="eBay技术荟 | wechat-feeds" xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzA3MDMyNDUzOQ==.xml" />
|
|
||||||
<outline type="rss" text="小米信息部技术团队" htmlUrl="/atom.xml" title="小米信息部技术团队" xmlUrl="https://xiaomi-info.github.io/atom" />
|
|
||||||
<outline type="rss" text="IBM Developer" xmlUrl="https://developer.ibm.com/feed/" htmlUrl="https://developer.ibm.com" title="IBM Developer" />
|
|
||||||
<outline title="滴滴技术 | wechat-feeds" htmlUrl="http://MzU1ODEzNjI2NA.favicon.privacyhide.com/favicon.ico" text="滴滴技术 | wechat-feeds" type="rss" xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzU1ODEzNjI2NA==.xml" />
|
|
||||||
<outline title="vivo互联网技术 | wechat-feeds" text="vivo互联网技术 | wechat-feeds" xmlUrl="https://github.com/hellodword/wechat-feeds/raw/feeds/MzI4NjY4MTU5Nw==.xml" htmlUrl="http://MzI4NjY4MTU5Nw.favicon.privacyhide.com/favicon.ico" type="rss" />
|
|
||||||
<outline htmlUrl="http://ashinch.com/" type="rss" title="Ash's Knowledge Base" xmlUrl="https://www.ashinch.com/feed" text="Ash's Knowledge Base" />
|
|
||||||
<outline type="rss" text="阿里巴巴中间件 | wechat-feeds" title="阿里巴巴中间件 | wechat-feeds" xmlUrl="https://api.feeddd.org/feeds/615ea22c1269c358aa166d7a" htmlUrl="https://mp.weixin.qq.com" />
|
|
||||||
<outline title="阿里技术" type="rss" xmlUrl="https://api.feeddd.org/feeds/612c4e602b6da10dfaec7645" htmlUrl="https://mp.weixin.qq.com" text="阿里技术" />
|
|
||||||
<outline xmlUrl="https://api.feeddd.org/feeds/615ea22c1269c358aa166d6a" type="rss" title="艾小仙" text="艾小仙" htmlUrl="https://mp.weixin.qq.com" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" type="rss" xmlUrl="https://api.feeddd.org/feeds/6131b4041269c358aa0deac7" title="爱奇艺技术产品团队" text="爱奇艺技术产品团队" />
|
|
||||||
<outline xmlUrl="https://api.feeddd.org/feeds/613381fa1269c358aa0eaec1" text="三太子敖丙 | wechat-feeds" htmlUrl="https://api.feeddd.org" title="三太子敖丙 | wechat-feeds" type="rss" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" xmlUrl="https://api.feeddd.org/feeds/61455d381269c358aa11efca" title="字节跳动技术团队" type="rss" text="字节跳动技术团队" />
|
|
||||||
<outline title="Java3y" text="Java3y" type="rss" htmlUrl="https://mp.weixin.qq.com" xmlUrl="https://api.feeddd.org/feeds/613381f91269c358aa0eabd1" />
|
|
||||||
<outline type="rss" text="JavaGuide | wechat-feeds" xmlUrl="https://api.feeddd.org/feeds/613381f91269c358aa0eabd9" title="JavaGuide | wechat-feeds" htmlUrl="https://api.feeddd.org" />
|
|
||||||
<outline htmlUrl="https://api.feeddd.org" type="rss" xmlUrl="https://api.feeddd.org/feeds/6140676c1269c358aa11056c" text="Thoughtworks | wechat-feeds" title="Thoughtworks | wechat-feeds" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" text="有赞coder" type="rss" title="有赞coder" xmlUrl="https://api.feeddd.org/feeds/616e984cb9a7e049c387659c" />
|
|
||||||
<outline title="计算机视觉life" type="rss" htmlUrl="https://mp.weixin.qq.com" xmlUrl="https://api.feeddd.org/feeds/61e3f060dca58a380c4456c0" text="计算机视觉life" />
|
|
||||||
<outline title="我爱计算机视觉" text="我爱计算机视觉" type="rss" xmlUrl="https://api.feeddd.org/feeds/6159cf1d1269c358aa1550e9" htmlUrl="https://mp.weixin.qq.com" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" type="rss" xmlUrl="https://api.feeddd.org/feeds/613381fa1269c358aa0eafa9" title="我是程序汪" text="我是程序汪" />
|
|
||||||
<outline title="低并发编程" text="低并发编程" type="rss" xmlUrl="https://api.feeddd.org/feeds/61e2b1d2dca58a380c43846b" htmlUrl="https://mp.weixin.qq.com" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" xmlUrl="https://api.feeddd.org/feeds/61f55b22dca58a380c510633" type="rss" title="eBay技术荟" text="eBay技术荟" />
|
|
||||||
<outline htmlUrl="https://mp.weixin.qq.com" title="vivo互联网技术" xmlUrl="https://api.feeddd.org/feeds/61f55b22dca58a380c510624" type="rss" text="vivo互联网技术" />
|
|
||||||
</outline>
|
|
||||||
<outline text="新鲜事" title="新鲜事">
|
|
||||||
<outline title="月光博客" xmlUrl="https://www.williamlong.info/rss.xml" text="月光博客" type="rss" htmlUrl="https://www.williamlong.info/" />
|
|
||||||
<outline htmlUrl="https://sspai.com" text="少数派" title="少数派" xmlUrl="https://sspai.com/feed" type="rss" />
|
|
||||||
<outline text="知乎每日精选" title="知乎每日精选" xmlUrl="https://www.zhihu.com/rss" type="rss" htmlUrl="http://www.zhihu.com" />
|
|
||||||
<outline type="rss" title="澎湃新闻" text="澎湃新闻" htmlUrl="http://thepaper.cn" xmlUrl="https://feedx.net/rss/thepaper.xml" />
|
|
||||||
<outline htmlUrl="https://www.qbitai.com" title="量子位" text="量子位" type="rss" xmlUrl="https://www.qbitai.com/feed" />
|
|
||||||
</outline>
|
|
||||||
</body>
|
|
||||||
</opml>
|
|
Loading…
Reference in New Issue
Block a user