From 843a0f7f16d829e99b651c4d65ddd86a5ea8fd79 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Wed, 6 Sep 2023 09:24:35 +0200 Subject: [PATCH] animate negative snackbar --- Habitica/res/drawable/snackbar_background_black.xml | 6 ++++++ .../android/habitica/ui/views/HabiticaSnackbar.kt | 9 ++++++++- version.properties | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 Habitica/res/drawable/snackbar_background_black.xml diff --git a/Habitica/res/drawable/snackbar_background_black.xml b/Habitica/res/drawable/snackbar_background_black.xml new file mode 100644 index 000000000..6fa29e299 --- /dev/null +++ b/Habitica/res/drawable/snackbar_background_black.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt index adbedbb9c..955f44cb3 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt @@ -15,6 +15,7 @@ import androidx.core.view.ViewCompat import com.google.android.material.snackbar.BaseTransientBottomBar import com.google.android.material.snackbar.Snackbar import com.habitrpg.android.habitica.R +import com.habitrpg.common.habitica.helpers.Animations import com.plattysoft.leonids.ParticleSystem class HabiticaSnackbar @@ -111,7 +112,7 @@ private constructor(parent: ViewGroup, content: View, callback: ContentViewCallb } enum class SnackbarDisplayType { - NORMAL, FAILURE, FAILURE_BLUE, DROP, SUCCESS, BLUE + NORMAL, FAILURE, FAILURE_BLUE, DROP, SUCCESS, BLUE, BLACK } companion object { @@ -247,6 +248,7 @@ private constructor(parent: ViewGroup, content: View, callback: ContentViewCallb when (displayType) { SnackbarDisplayType.FAILURE -> snackbar.setBackgroundResource(R.drawable.snackbar_background_red) + SnackbarDisplayType.BLACK -> snackbar.setBackgroundResource(R.drawable.snackbar_background_black) SnackbarDisplayType.FAILURE_BLUE, SnackbarDisplayType.BLUE -> snackbar.setBackgroundResource( R.drawable.snackbar_background_blue ) @@ -265,6 +267,11 @@ private constructor(parent: ViewGroup, content: View, callback: ContentViewCallb } snackbar.show() + if (displayType == SnackbarDisplayType.FAILURE || displayType == SnackbarDisplayType.FAILURE_BLUE) { + container.postDelayed({ + snackbar.getView().startAnimation(Animations.negativeShakeAnimation()) + }, 600L) + } } private fun showSubscriberBenefitAnimation(container: ViewGroup, snackbar: HabiticaSnackbar) { diff --git a/version.properties b/version.properties index d599e1308..7852354c0 100644 --- a/version.properties +++ b/version.properties @@ -1,2 +1,2 @@ NAME=4.3 -CODE=6441 \ No newline at end of file +CODE=6461 \ No newline at end of file