2020-06-19 15:48:14 +00:00
|
|
|
package com.vanced.manager.utils
|
|
|
|
|
|
|
|
import android.content.res.Configuration
|
|
|
|
import androidx.preference.PreferenceManager
|
|
|
|
import com.vanced.manager.R
|
2020-06-24 06:35:04 +00:00
|
|
|
import com.vanced.manager.ui.MainActivity
|
2020-06-19 15:48:14 +00:00
|
|
|
|
|
|
|
object ThemeHelper {
|
|
|
|
|
2020-06-24 06:35:04 +00:00
|
|
|
fun setFinalTheme(activity: MainActivity) {
|
|
|
|
val currentAccent = PreferenceManager.getDefaultSharedPreferences(activity).getString("accent_color", "Blue")
|
|
|
|
when (PreferenceManager.getDefaultSharedPreferences(activity)
|
2020-06-23 13:47:20 +00:00
|
|
|
.getString("theme_mode", "Follow System")) {
|
2020-06-24 06:35:04 +00:00
|
|
|
"Light" -> activity.setTheme(getLightAccent(currentAccent))
|
|
|
|
"Dark" -> activity.setTheme(getDarkAccent(currentAccent))
|
2020-06-19 15:48:14 +00:00
|
|
|
"Follow System" -> {
|
2020-06-24 06:35:04 +00:00
|
|
|
when (activity.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) {
|
|
|
|
Configuration.UI_MODE_NIGHT_YES -> activity.setTheme(getDarkAccent(currentAccent))
|
|
|
|
Configuration.UI_MODE_NIGHT_NO -> activity.setTheme(getLightAccent(currentAccent))
|
2020-06-19 15:48:14 +00:00
|
|
|
}
|
|
|
|
}
|
2020-06-24 06:35:04 +00:00
|
|
|
else -> getLightAccent("Blue")
|
2020-06-19 15:48:14 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-06-24 06:35:04 +00:00
|
|
|
private fun getDarkAccent(accentColor: String?): Int {
|
|
|
|
return when (accentColor) {
|
|
|
|
"Blue" -> R.style.DarkTheme_Blue
|
|
|
|
"Red" -> R.style.DarkTheme_Red
|
|
|
|
"Green" -> R.style.DarkTheme_Green
|
|
|
|
"Yellow" -> R.style.DarkTheme_Yellow
|
|
|
|
"Purple" -> R.style.DarkTheme_Purple
|
|
|
|
else -> R.style.DarkTheme_Blue
|
2020-06-19 15:48:14 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-06-24 06:35:04 +00:00
|
|
|
private fun getLightAccent(accentColor: String?): Int {
|
|
|
|
return when (accentColor) {
|
|
|
|
"Blue" -> R.style.LightTheme_Blue
|
|
|
|
"Red" -> R.style.LightTheme_Red
|
|
|
|
"Green" -> R.style.LightTheme_Green
|
|
|
|
"Yellow" -> R.style.LightTheme_Yellow
|
|
|
|
"Purple" -> R.style.LightTheme_Purple
|
|
|
|
else -> R.style.LightTheme_Blue
|
2020-06-19 15:48:14 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|