diff options
author | Allan Wang <me@allanwang.ca> | 2017-06-22 19:50:44 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2017-06-22 19:50:44 -0700 |
commit | da5967f87b8a0e9863fb6b82fc5807bae9e62a00 (patch) | |
tree | 8575d63efacb79ae10a50c471bf3c8055ea1dbf9 /app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt | |
parent | 42d441c0e2b436c7b95fe8dc02ef36608395dbff (diff) | |
download | frost-da5967f87b8a0e9863fb6b82fc5807bae9e62a00.tar.gz frost-da5967f87b8a0e9863fb6b82fc5807bae9e62a00.tar.bz2 frost-da5967f87b8a0e9863fb6b82fc5807bae9e62a00.zip |
Fix up colors and add overlay tip
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt index a8a71845..70205bc6 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt @@ -7,10 +7,13 @@ import android.content.ComponentName import android.content.Context import android.graphics.Color import android.graphics.drawable.ColorDrawable +import android.support.annotation.StringRes +import android.support.design.internal.SnackbarContentLayout +import android.support.design.widget.Snackbar import android.support.v4.app.NotificationCompat -import android.support.v7.widget.SimpleItemAnimator import android.support.v7.widget.Toolbar import android.view.View +import android.widget.FrameLayout import android.widget.TextView import ca.allanwang.kau.utils.* import com.afollestad.materialdialogs.MaterialDialog @@ -102,15 +105,14 @@ fun Activity.setFrostTheme(forceTransparent: Boolean = false) { fun Activity.setFrostColors(toolbar: Toolbar? = null, themeWindow: Boolean = true, texts: Array<TextView> = arrayOf(), headers: Array<View> = arrayOf(), backgrounds: Array<View> = arrayOf()) { - val darkAccent = Prefs.headerColor.darken() - statusBarColor = darkAccent.darken().withAlpha(255) - navigationBarColor = darkAccent + statusBarColor = Prefs.headerColor.darken(0.1f).withAlpha(255) + navigationBarColor = Prefs.headerColor if (themeWindow) window.setBackgroundDrawable(ColorDrawable(Prefs.bgColor)) - toolbar?.setBackgroundColor(darkAccent) + toolbar?.setBackgroundColor(Prefs.headerColor) toolbar?.setTitleTextColor(Prefs.iconColor) toolbar?.overflowIcon?.setTint(Prefs.iconColor) texts.forEach { it.setTextColor(Prefs.textColor) } - headers.forEach { it.setBackgroundColor(darkAccent) } + headers.forEach { it.setBackgroundColor(Prefs.headerColor) } backgrounds.forEach { it.setBackgroundColor(Prefs.bgColor) } } @@ -147,4 +149,18 @@ fun frostAnswersCustom(name: String, action: CustomEvent.() -> Unit = {}) { frostAnswers { logCustom(CustomEvent("Frost $name").apply { action() }) } +} + +fun View.frostSnackbar(@StringRes text: Int, builder: Snackbar.() -> Unit = {}) { + Snackbar.make(this, text, Snackbar.LENGTH_LONG).apply { + builder() + //hacky workaround, but it has proper checks and shouldn't crash + ((view as? FrameLayout)?.getChildAt(0) as? SnackbarContentLayout)?.apply { + messageView.setTextColor(Prefs.textColor) + actionView.setTextColor(Prefs.accentColor) + //only set if previous text colors are set + view.setBackgroundColor(Prefs.bgColor.colorToForeground(0.1f)) + } + show() + } }
\ No newline at end of file |