Skip to content

Commit

Permalink
Added Dracula Theme (#376)
Browse files Browse the repository at this point in the history
* Added Dracula Theme to Color.kt

* Added Dracula theme to Theme.kt

* fixed typo

hope this fixes it

* next try

i really should have learned a bit of kotlin before doing this

* fixed formatting in Color.kt

* finally fixed the errors

* Added string for dracula theme in strings.xml

* fixed 'unresolved reference: Dracula' in Types.kt

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
  • Loading branch information
0xFOSSMan and dessalines committed Sep 5, 2023
1 parent f076c88 commit d44aab8
Show file tree
Hide file tree
Showing 4 changed files with 133 additions and 0 deletions.
130 changes: 130 additions & 0 deletions app/src/main/java/com/dessalines/thumbkey/ui/theme/Color.kt
Original file line number Diff line number Diff line change
Expand Up @@ -527,3 +527,133 @@ fun blue(): Pair<ColorScheme, ColorScheme> {
)
return Pair(light, dark)
}
fun dracula(): Pair<ColorScheme, ColorScheme> {
val md_theme_light_primary = Color(0xFF4758A9)
val md_theme_light_onPrimary = Color(0xFFFFFFFF)
val md_theme_light_primaryContainer = Color(0xFFDDE1FF)
val md_theme_light_onPrimaryContainer = Color(0xFF001257)
val md_theme_light_secondary = Color(0xFF5A5D72)
val md_theme_light_onSecondary = Color(0xFFFFFFFF)
val md_theme_light_secondaryContainer = Color(0xFFDFE1F9)
val md_theme_light_onSecondaryContainer = Color(0xFF171B2C)
val md_theme_light_tertiary = Color(0xFF76546E)
val md_theme_light_onTertiary = Color(0xFFFFFFFF)
val md_theme_light_tertiaryContainer = Color(0xFFFFD7F2)
val md_theme_light_onTertiaryContainer = Color(0xFF2D1228)
val md_theme_light_error = Color(0xFFBA1A1A)
val md_theme_light_errorContainer = Color(0xFFFFDAD6)
val md_theme_light_onError = Color(0xFFFFFFFF)
val md_theme_light_onErrorContainer = Color(0xFF410002)
val md_theme_light_background = Color(0xFFFEFBFF)
val md_theme_light_onBackground = Color(0xFF1B1B1F)
val md_theme_light_surface = Color(0xFFFEFBFF)
val md_theme_light_onSurface = Color(0xFF1B1B1F)
val md_theme_light_surfaceVariant = Color(0xFFE3E1EC)
val md_theme_light_onSurfaceVariant = Color(0xFF45464F)
val md_theme_light_outline = Color(0xFF767680)
val md_theme_light_inverseOnSurface = Color(0xFFF3F0F4)
val md_theme_light_inverseSurface = Color(0xFF303034)
val md_theme_light_inversePrimary = Color(0xFFB9C3FF)
val md_theme_light_shadow = Color(0xFF000000)
val md_theme_light_surfaceTint = Color(0xFF4758A9)
val md_theme_light_outlineVariant = Color(0xFFC6C5D0)
val md_theme_light_scrim = Color(0xFF000000)

val md_theme_dark_primary = Color(0xFFB9C3FF)
val md_theme_dark_onPrimary = Color(0xFF132778)
val md_theme_dark_primaryContainer = Color(0xFF2E4090)
val md_theme_dark_onPrimaryContainer = Color(0xFFDDE1FF)
val md_theme_dark_secondary = Color(0xFFC3C5DD)
val md_theme_dark_onSecondary = Color(0xFF2C2F42)
val md_theme_dark_secondaryContainer = Color(0xFF434659)
val md_theme_dark_onSecondaryContainer = Color(0xFFDFE1F9)
val md_theme_dark_tertiary = Color(0xFFE5BAD8)
val md_theme_dark_onTertiary = Color(0xFF44263E)
val md_theme_dark_tertiaryContainer = Color(0xFF5C3C55)
val md_theme_dark_onTertiaryContainer = Color(0xFFFFD7F2)
val md_theme_dark_error = Color(0xFFFFB4AB)
val md_theme_dark_errorContainer = Color(0xFF93000A)
val md_theme_dark_onError = Color(0xFF690005)
val md_theme_dark_onErrorContainer = Color(0xFFFFDAD6)
val md_theme_dark_background = Color(0xFF1B1B1F)
val md_theme_dark_onBackground = Color(0xFFE4E1E6)
val md_theme_dark_surface = Color(0xFF1B1B1F)
val md_theme_dark_onSurface = Color(0xFFE4E1E6)
val md_theme_dark_surfaceVariant = Color(0xFF45464F)
val md_theme_dark_onSurfaceVariant = Color(0xFFC6C5D0)
val md_theme_dark_outline = Color(0xFF90909A)
val md_theme_dark_inverseOnSurface = Color(0xFF1B1B1F)
val md_theme_dark_inverseSurface = Color(0xFFE4E1E6)
val md_theme_dark_inversePrimary = Color(0xFF4758A9)
val md_theme_dark_shadow = Color(0xFF000000)
val md_theme_dark_surfaceTint = Color(0xFFB9C3FF)
val md_theme_dark_outlineVariant = Color(0xFF45464F)
val md_theme_dark_scrim = Color(0xFF000000)

val seed = Color(0xFF44475A)

val light = 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,
surfaceTint = md_theme_light_surfaceTint,
outlineVariant = md_theme_light_outlineVariant,
scrim = md_theme_light_scrim,
)

val dark = 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,
surfaceTint = md_theme_dark_surfaceTint,
outlineVariant = md_theme_dark_outlineVariant,
scrim = md_theme_dark_scrim,
)
return Pair(light, dark)
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ fun ThumbkeyTheme(
ThemeColor.Pink -> pink()
ThemeColor.Srcery -> srcery()
ThemeColor.Blue -> blue()
ThemeColor.Dracula -> dracula()
}

val systemTheme = if (!isSystemInDarkTheme()) {
Expand Down
1 change: 1 addition & 0 deletions app/src/main/java/com/dessalines/thumbkey/utils/Types.kt
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ enum class ThemeColor(private val stringId: Int) {
Pink(R.string.pink),
Srcery(R.string.srcery),
Blue(R.string.blue),
Dracula(R.string.dracula),
;

@Composable
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
<string name="pink">Pink</string>
<string name="srcery">Srcery</string>
<string name="blue">Blue</string>
<string name="dracula">Dracula</string>
<string name="center">Center</string>
<string name="right">Right</string>
<string name="left">Left</string>
Expand Down

0 comments on commit d44aab8

Please sign in to comment.