Add Tokyo Night theme (#3502)
This commit is contained in:
@@ -15,6 +15,7 @@ The format is a modified version of [Keep a Changelog](https://keepachangelog.co
|
||||
- Support resumable image downloads if supported by source ([@xMohnad](https://github.com/xMohnad)) ([#3167](https://github.com/mihonapp/mihon/pull/3167))
|
||||
- Fix HTTP Error 416 not being handled properly ([@AntsyLich](https://github.com/AntsyLich)) ([#3563](https://github.com/mihonapp/mihon/pull/3563))
|
||||
- Fix incorrect progress when resuming downloads ([@xMohnad](https://github.com/xMohnad)) ([#3616](https://github.com/mihonapp/mihon/pull/3616))
|
||||
- Add Tokyo Night Theme ([@xMohnad](https://github.com/xMohnad)) ([#3502](https://github.com/mihonapp/mihon/pull/3502))
|
||||
|
||||
### Changed
|
||||
- Detect Shizuku with permission check ([@Small-Ku](https://github.com/Small-Ku)) ([#3565](https://github.com/mihonapp/mihon/pull/3565))
|
||||
|
||||
@@ -17,6 +17,7 @@ enum class AppTheme(val titleRes: StringResource?) {
|
||||
TIDAL_WAVE(MR.strings.theme_tidalwave),
|
||||
YINYANG(MR.strings.theme_yinyang),
|
||||
YOTSUBA(MR.strings.theme_yotsuba),
|
||||
TOKYONIGHT(MR.strings.theme_tokyonight),
|
||||
MONOCHROME(MR.strings.theme_monochrome),
|
||||
|
||||
// Deprecated
|
||||
|
||||
@@ -22,6 +22,7 @@ import eu.kanade.presentation.theme.colorscheme.TachiyomiColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.TakoColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.TealTurqoiseColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.TidalWaveColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.TokyoNightColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.YinYangColorScheme
|
||||
import eu.kanade.presentation.theme.colorscheme.YotsubaColorScheme
|
||||
import uy.kohesive.injekt.Injekt
|
||||
@@ -90,6 +91,7 @@ private fun getThemeColorScheme(
|
||||
private val colorSchemes: Map<AppTheme, BaseColorScheme> = mapOf(
|
||||
AppTheme.DEFAULT to TachiyomiColorScheme,
|
||||
AppTheme.CATPPUCCIN to CatppuccinColorScheme,
|
||||
AppTheme.TOKYONIGHT to TokyoNightColorScheme,
|
||||
AppTheme.GREEN_APPLE to GreenAppleColorScheme,
|
||||
AppTheme.LAVENDER to LavenderColorScheme,
|
||||
AppTheme.MIDNIGHT_DUSK to MidnightDuskColorScheme,
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
package eu.kanade.presentation.theme.colorscheme
|
||||
|
||||
import androidx.compose.material3.darkColorScheme
|
||||
import androidx.compose.material3.lightColorScheme
|
||||
import androidx.compose.ui.graphics.Color
|
||||
|
||||
/**
|
||||
* Colors for Tokyo Night Moon/Day
|
||||
*
|
||||
* https://github.com/folke/tokyonight.nvim
|
||||
*/
|
||||
internal object TokyoNightColorScheme : BaseColorScheme() {
|
||||
|
||||
override val darkScheme = darkColorScheme(
|
||||
primary = Color(0xFF82AAFF),
|
||||
onPrimary = Color(0xFF1B1D2B),
|
||||
primaryContainer = Color(0xFF444A73),
|
||||
onPrimaryContainer = Color(0xFF9AB8FF),
|
||||
secondary = Color(0xFF86E1FC),
|
||||
onSecondary = Color(0xFF1B1D2B),
|
||||
secondaryContainer = Color(0xFF444A73),
|
||||
onSecondaryContainer = Color(0xFFB2EBFF),
|
||||
tertiary = Color(0xFFC099FF),
|
||||
onTertiary = Color(0xFF1B1D2B),
|
||||
tertiaryContainer = Color(0xFF444A73),
|
||||
onTertiaryContainer = Color(0xFFCAABFF),
|
||||
error = Color(0xFFFF757F),
|
||||
onError = Color(0xFF1B1D2B),
|
||||
errorContainer = Color(0xFFC53B53),
|
||||
onErrorContainer = Color(0xFFFF8D94),
|
||||
background = Color(0xFF222436),
|
||||
onBackground = Color(0xFFC8D3F5),
|
||||
surface = Color(0xFF222436),
|
||||
onSurface = Color(0xFFC8D3F5),
|
||||
surfaceVariant = Color(0xFF444A73),
|
||||
onSurfaceVariant = Color(0xFF828BB8),
|
||||
outline = Color(0xFF828BB8),
|
||||
outlineVariant = Color(0xFF444A73),
|
||||
scrim = Color(0xFF000000),
|
||||
inverseSurface = Color(0xFFC8D3F5),
|
||||
inverseOnSurface = Color(0xFF222436),
|
||||
inversePrimary = Color(0xFF3D5C9E),
|
||||
surfaceContainerLowest = Color(0xFF1E202F),
|
||||
surfaceDim = Color(0xFF222436),
|
||||
surfaceContainerLow = Color(0xFF292C44),
|
||||
surfaceContainer = Color(0xFF2D304B),
|
||||
surfaceContainerHigh = Color(0xFF363B5D),
|
||||
surfaceContainerHighest = Color(0xFF3F466F),
|
||||
surfaceBright = Color(0xFF434A77),
|
||||
)
|
||||
|
||||
override val lightScheme = lightColorScheme(
|
||||
primary = Color(0xFF2E7DE9),
|
||||
onPrimary = Color(0xFFFFFFFF),
|
||||
primaryContainer = Color(0xFF92A6D5),
|
||||
onPrimaryContainer = Color(0xFF15386A),
|
||||
inversePrimary = Color(0xFF7890DD),
|
||||
secondary = Color(0xFF007197),
|
||||
onSecondary = Color(0xFFFFFFFF),
|
||||
secondaryContainer = Color(0xFFA9C6D3),
|
||||
onSecondaryContainer = Color(0xFF006A83),
|
||||
tertiary = Color(0xFF9854F1),
|
||||
onTertiary = Color(0xFFFFFFFF),
|
||||
tertiaryContainer = Color(0xFFCFBFEA),
|
||||
onTertiaryContainer = Color(0xFF7847BD),
|
||||
background = Color(0xFFE1E2E7),
|
||||
onBackground = Color(0xFF3760BF),
|
||||
surface = Color(0xFFE1E2E7),
|
||||
onSurface = Color(0xFF3760BF),
|
||||
surfaceVariant = Color(0xFFC4C8DA),
|
||||
onSurfaceVariant = Color(0xFF6172B0),
|
||||
surfaceTint = Color(0xFF2E7DE9),
|
||||
inverseSurface = Color(0xFF3760BF),
|
||||
inverseOnSurface = Color(0xFFE1E2E7),
|
||||
outline = Color(0xFF68709A),
|
||||
outlineVariant = Color(0xFFA8AECB),
|
||||
error = Color(0xFFF52A65),
|
||||
onError = Color(0xFFFFFFFF),
|
||||
errorContainer = Color(0xFFE6B4C7),
|
||||
onErrorContainer = Color(0xFF6E132D),
|
||||
surfaceDim = Color(0xFF9195B1),
|
||||
surfaceBright = Color(0xFFE1E2E7),
|
||||
surfaceContainerLowest = Color(0xFFE4E5E9),
|
||||
surfaceContainerLow = Color(0xFFD0D5E3),
|
||||
surfaceContainer = Color(0xFFC1C9DF),
|
||||
surfaceContainerHigh = Color(0xFFC4C8DA),
|
||||
surfaceContainerHighest = Color(0xFFA1A6C5),
|
||||
)
|
||||
}
|
||||
@@ -31,6 +31,7 @@ class ThemingDelegateImpl : ThemingDelegate {
|
||||
private val themeResources: Map<AppTheme, Int> = mapOf(
|
||||
AppTheme.MONET to R.style.Theme_Tachiyomi_Monet,
|
||||
AppTheme.CATPPUCCIN to R.style.Theme_Tachiyomi_Catppuccin,
|
||||
AppTheme.TOKYONIGHT to R.style.Theme_Tachiyomi_TokyoNight,
|
||||
AppTheme.GREEN_APPLE to R.style.Theme_Tachiyomi_GreenApple,
|
||||
AppTheme.LAVENDER to R.style.Theme_Tachiyomi_Lavender,
|
||||
AppTheme.MIDNIGHT_DUSK to R.style.Theme_Tachiyomi_MidnightDusk,
|
||||
|
||||
@@ -130,6 +130,47 @@
|
||||
<item name="colorSurfaceContainerLow">@color/catppuccin_surfaceContainerLow</item>
|
||||
<item name="colorSurfaceContainerLowest">@color/catppuccin_surfaceContainerLowest</item>
|
||||
</style>
|
||||
|
||||
<!--== Tokyo Night Theme ==-->
|
||||
<style name="Theme.Tachiyomi.TokyoNight">
|
||||
<!-- Theme Colors -->
|
||||
<item name="colorPrimary">@color/tokyonight_primary</item>
|
||||
<item name="colorOnPrimary">@color/tokyonight_onPrimary</item>
|
||||
<item name="colorPrimaryContainer">@color/tokyonight_primaryContainer</item>
|
||||
<item name="colorOnPrimaryContainer">@color/tokyonight_onPrimaryContainer</item>
|
||||
<item name="colorPrimaryInverse">@color/tokyonight_inversePrimary</item>
|
||||
<item name="colorSecondary">@color/tokyonight_secondary</item>
|
||||
<item name="colorOnSecondary">@color/tokyonight_onSecondary</item>
|
||||
<item name="colorSecondaryContainer">@color/tokyonight_secondaryContainer</item>
|
||||
<item name="colorOnSecondaryContainer">@color/tokyonight_onSecondaryContainer</item>
|
||||
<item name="colorTertiary">@color/tokyonight_tertiary</item>
|
||||
<item name="colorOnTertiary">@color/tokyonight_onTertiary</item>
|
||||
<item name="colorTertiaryContainer">@color/tokyonight_tertiaryContainer</item>
|
||||
<item name="colorOnTertiaryContainer">@color/tokyonight_onTertiaryContainer</item>
|
||||
<item name="android:colorBackground">@color/tokyonight_background</item>
|
||||
<item name="colorOnBackground">@color/tokyonight_onBackground</item>
|
||||
<item name="colorSurface">@color/tokyonight_surface</item>
|
||||
<item name="colorOnSurface">@color/tokyonight_onSurface</item>
|
||||
<item name="colorSurfaceVariant">@color/tokyonight_surfaceVariant</item>
|
||||
<item name="colorOnSurfaceVariant">@color/tokyonight_onSurfaceVariant</item>
|
||||
<item name="colorSurfaceInverse">@color/tokyonight_inverseSurface</item>
|
||||
<item name="colorOnSurfaceInverse">@color/tokyonight_inverseOnSurface</item>
|
||||
<item name="colorError">@color/tokyonight_error</item>
|
||||
<item name="colorOnError">@color/tokyonight_onError</item>
|
||||
<item name="colorErrorContainer">@color/tokyonight_errorContainer</item>
|
||||
<item name="colorOnErrorContainer">@color/tokyonight_onErrorContainer</item>
|
||||
<item name="colorOutline">@color/tokyonight_outline</item>
|
||||
<item name="colorOutlineVariant">@color/tokyonight_outlineVariant</item>
|
||||
<item name="scrimBackground">@color/tokyonight_scrim</item>
|
||||
<item name="colorSurfaceBright">@color/tokyonight_surfaceBright</item>
|
||||
<item name="colorSurfaceDim">@color/tokyonight_surfaceDim</item>
|
||||
<item name="colorSurfaceContainer">@color/tokyonight_surfaceContainer</item>
|
||||
<item name="colorSurfaceContainerHigh">@color/tokyonight_surfaceContainerHigh</item>
|
||||
<item name="colorSurfaceContainerHighest">@color/tokyonight_surfaceContainerHighest</item>
|
||||
<item name="colorSurfaceContainerLow">@color/tokyonight_surfaceContainerLow</item>
|
||||
<item name="colorSurfaceContainerLowest">@color/tokyonight_surfaceContainerLowest</item>
|
||||
</style>
|
||||
|
||||
<!--== Green Apple Theme ==-->
|
||||
<style name="Theme.Tachiyomi.GreenApple">
|
||||
<!-- Theme Colors -->
|
||||
|
||||
@@ -231,6 +231,7 @@
|
||||
<string name="theme_dark">Dark</string>
|
||||
<string name="theme_monet">Dynamic</string>
|
||||
<string name="theme_catppuccin">Catppuccin</string>
|
||||
<string name="theme_tokyonight">Tokyo Night</string>
|
||||
<string name="theme_greenapple">Green Apple</string>
|
||||
<string name="theme_lavender">Lavender</string>
|
||||
<string name="theme_midnightdusk">Midnight Dusk</string>
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Colors for Tokyo Night Moon
|
||||
|
||||
https://github.com/folke/tokyonight.nvim/blob/main/lua/tokyonight/colors/moon.lua
|
||||
-->
|
||||
<resources>
|
||||
<color name="tokyonight_primary">#82AAFF</color>
|
||||
<color name="tokyonight_onPrimary">#1B1D2B</color>
|
||||
<color name="tokyonight_primaryContainer">#444A73</color>
|
||||
<color name="tokyonight_onPrimaryContainer">#9AB8FF</color>
|
||||
<color name="tokyonight_secondary">#86E1FC</color>
|
||||
<color name="tokyonight_onSecondary">#1B1D2B</color>
|
||||
<color name="tokyonight_secondaryContainer">#444A73</color>
|
||||
<color name="tokyonight_onSecondaryContainer">#B2EBFF</color>
|
||||
<color name="tokyonight_tertiary">#C099FF</color>
|
||||
<color name="tokyonight_onTertiary">#1B1D2B</color>
|
||||
<color name="tokyonight_tertiaryContainer">#444A73</color>
|
||||
<color name="tokyonight_onTertiaryContainer">#CAABFF</color>
|
||||
<color name="tokyonight_error">#FF757F</color>
|
||||
<color name="tokyonight_onError">#1B1D2B</color>
|
||||
<color name="tokyonight_errorContainer">#C53B53</color>
|
||||
<color name="tokyonight_onErrorContainer">#FF8D94</color>
|
||||
<color name="tokyonight_background">#222436</color>
|
||||
<color name="tokyonight_onBackground">#C8D3F5</color>
|
||||
<color name="tokyonight_surface">#222436</color>
|
||||
<color name="tokyonight_onSurface">#C8D3F5</color>
|
||||
<color name="tokyonight_surfaceVariant">#444A73</color>
|
||||
<color name="tokyonight_onSurfaceVariant">#828BB8</color>
|
||||
<color name="tokyonight_outline">#828BB8</color>
|
||||
<color name="tokyonight_outlineVariant">#444A73</color>
|
||||
<color name="tokyonight_scrim">#000000</color>
|
||||
<color name="tokyonight_inverseSurface">#C8D3F5</color>
|
||||
<color name="tokyonight_inverseOnSurface">#222436</color>
|
||||
<color name="tokyonight_inversePrimary">#3D5C9E</color>
|
||||
<color name="tokyonight_surfaceContainerLowest">#1E202F</color>
|
||||
<color name="tokyonight_surfaceDim">#222436</color>
|
||||
<color name="tokyonight_surfaceContainerLow">#292C44</color>
|
||||
<color name="tokyonight_surfaceContainer">#2D304B</color>
|
||||
<color name="tokyonight_surfaceContainerHigh">#363B5D</color>
|
||||
<color name="tokyonight_surfaceContainerHighest">#3F466F</color>
|
||||
<color name="tokyonight_surfaceBright">#434A77</color>
|
||||
</resources>
|
||||
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Colors for Tokyo Night Day
|
||||
|
||||
https://github.com/folke/tokyonight.nvim/blob/main/lua/tokyonight/colors/day.lua
|
||||
-->
|
||||
<resources>
|
||||
<color name="tokyonight_primary">#2e7de9</color>
|
||||
<color name="tokyonight_onPrimary">#ffffff</color>
|
||||
<color name="tokyonight_primaryContainer">#92a6d5</color>
|
||||
<color name="tokyonight_onPrimaryContainer">#15386a</color>
|
||||
<color name="tokyonight_secondary">#007197</color>
|
||||
<color name="tokyonight_onSecondary">#ffffff</color>
|
||||
<color name="tokyonight_secondaryContainer">#a9c6d3</color>
|
||||
<color name="tokyonight_onSecondaryContainer">#006a83</color>
|
||||
<color name="tokyonight_tertiary">#9854f1</color>
|
||||
<color name="tokyonight_onTertiary">#ffffff</color>
|
||||
<color name="tokyonight_tertiaryContainer">#cfbfea</color>
|
||||
<color name="tokyonight_onTertiaryContainer">#7847bd</color>
|
||||
<color name="tokyonight_error">#f52a65</color>
|
||||
<color name="tokyonight_onError">#ffffff</color>
|
||||
<color name="tokyonight_errorContainer">#e6b4c7</color>
|
||||
<color name="tokyonight_onErrorContainer">#6e132d</color>
|
||||
<color name="tokyonight_background">#e1e2e7</color>
|
||||
<color name="tokyonight_onBackground">#3760bf</color>
|
||||
<color name="tokyonight_surface">#e1e2e7</color>
|
||||
<color name="tokyonight_onSurface">#3760bf</color>
|
||||
<color name="tokyonight_surfaceVariant">#c4c8da</color>
|
||||
<color name="tokyonight_onSurfaceVariant">#6172b0</color>
|
||||
<color name="tokyonight_outline">#68709a</color>
|
||||
<color name="tokyonight_outlineVariant">#a8aecb</color>
|
||||
<color name="tokyonight_scrim">#000000</color>
|
||||
<color name="tokyonight_inverseSurface">#3760bf</color>
|
||||
<color name="tokyonight_inverseOnSurface">#e1e2e7</color>
|
||||
<color name="tokyonight_inversePrimary">#7890dd</color>
|
||||
<color name="tokyonight_surfaceContainerLowest">#e4e5e9</color>
|
||||
<color name="tokyonight_surfaceDim">#9195b1</color>
|
||||
<color name="tokyonight_surfaceContainerLow">#d0d5e3</color>
|
||||
<color name="tokyonight_surfaceContainer">#c1c9df</color>
|
||||
<color name="tokyonight_surfaceContainerHigh">#c4c8da</color>
|
||||
<color name="tokyonight_surfaceContainerHighest">#a1a6c5</color>
|
||||
<color name="tokyonight_surfaceBright">#e1e2e7</color>
|
||||
</resources>
|
||||
Reference in New Issue
Block a user