aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt46
1 files changed, 43 insertions, 3 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt
index 56effb37..b5770739 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/SettingsActivity.kt
@@ -1,11 +1,51 @@
package com.pitchedapps.frost
-import android.preference.PreferenceActivity
-import android.support.v7.app.AppCompatActivity
+import android.os.Bundle
+import ca.allanwang.kau.kpref.KPrefActivity
+import ca.allanwang.kau.kpref.KPrefAdapterBuilder
+import ca.allanwang.kau.utils.darken
+import ca.allanwang.kau.utils.navigationBarColor
+import ca.allanwang.kau.views.RippleCanvas
+import com.mikepenz.google_material_typeface_library.GoogleMaterial
+import com.pitchedapps.frost.utils.Prefs
/**
* Created by Allan Wang on 2017-06-06.
*/
-class SettingsActivity:AppCompatActivity() {
+class SettingsActivity : KPrefActivity() {
+ override fun onCreateKPrefs(savedInstanceState: android.os.Bundle?): KPrefAdapterBuilder.() -> Unit = {
+ textColor = { Prefs.textColor }
+ accentColor = { Prefs.textColor }
+ header(R.string.settings)
+ colorPicker(title = R.string.text_color,
+ getter = { Prefs.textColor }, setter = { Prefs.textColor = it; reload() },
+ configs = {
+ allowCustom = true
+ })
+ colorPicker(iicon = GoogleMaterial.Icon.gmd_colorize,
+ title = R.string.background_color,
+ getter = { Prefs.bgColor }, setter = { Prefs.bgColor = it; bgCanvas.ripple(it, duration = 500L) },
+ configs = {
+ allowCustomAlpha = false
+ allowCustom = true
+ })
+ colorPicker(title = R.string.header_color,
+ getter = { Prefs.headerColor }, setter = {
+ Prefs.headerColor = it
+ val darkerColor = it.darken()
+ this@SettingsActivity.navigationBarColor = darkerColor
+ toolbarCanvas.ripple(darkerColor, RippleCanvas.MIDDLE, RippleCanvas.END, duration = 500L)
+ },
+ configs = {
+ allowCustom = false
+ })
+ }
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ bgCanvas.set(Prefs.bgColor)
+ val darkAccent = Prefs.headerColor.darken()
+ toolbarCanvas.set(darkAccent)
+ this.navigationBarColor = darkAccent
+ }
} \ No newline at end of file