From dcca5f9918f647e76d9928c1b5fcd2c1a54e91b6 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Wed, 10 May 2023 13:45:20 +0200 Subject: [PATCH] confetti tweaks --- Habitica/res/drawable/confetti_blue.xml | 6 +++--- Habitica/res/drawable/confetti_purple.xml | 8 ++++---- Habitica/res/drawable/confetti_red.xml | 6 +++--- Habitica/res/drawable/confetti_yellow.xml | 6 +++--- .../habitica/ui/views/HabiticaSnackbar.kt | 12 ++++++++---- .../habitica/ui/views/shops/PurchaseDialog.kt | 18 +++++++++++++++++- 6 files changed, 38 insertions(+), 18 deletions(-) diff --git a/Habitica/res/drawable/confetti_blue.xml b/Habitica/res/drawable/confetti_blue.xml index e78d8b540..3e4932741 100644 --- a/Habitica/res/drawable/confetti_blue.xml +++ b/Habitica/res/drawable/confetti_blue.xml @@ -1,6 +1,6 @@ - + - - \ No newline at end of file + + diff --git a/Habitica/res/drawable/confetti_purple.xml b/Habitica/res/drawable/confetti_purple.xml index 22c59b135..d7066cd0c 100644 --- a/Habitica/res/drawable/confetti_purple.xml +++ b/Habitica/res/drawable/confetti_purple.xml @@ -1,6 +1,6 @@ - - - - \ No newline at end of file + + + + diff --git a/Habitica/res/drawable/confetti_red.xml b/Habitica/res/drawable/confetti_red.xml index ffd9d742d..0de56e698 100644 --- a/Habitica/res/drawable/confetti_red.xml +++ b/Habitica/res/drawable/confetti_red.xml @@ -1,6 +1,6 @@ - + - - \ No newline at end of file + + diff --git a/Habitica/res/drawable/confetti_yellow.xml b/Habitica/res/drawable/confetti_yellow.xml index ae6bbc01e..dac8309bb 100644 --- a/Habitica/res/drawable/confetti_yellow.xml +++ b/Habitica/res/drawable/confetti_yellow.xml @@ -1,6 +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 5583b4203..365b04b8d 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 @@ -198,25 +198,29 @@ private constructor(parent: ViewGroup, content: View, callback: ContentViewCallb { ParticleSystem(container, 30, ContextCompat.getDrawable(container.context, R.drawable.confetti_blue), 6000) .setAcceleration(0.00070f, 90) - .setRotationSpeed(144f) + .setRotationSpeedRange(134f, 164f) + .setScaleRange(0.8f, 1.2f) .setSpeedByComponentsRange(-0.15f, 0.15f, -0.15f, -0.45f) .setFadeOut(200, AccelerateInterpolator()) .emitWithGravity(container, Gravity.BOTTOM, 7, 1000) ParticleSystem(container, 30, ContextCompat.getDrawable(container.context, R.drawable.confetti_red), 6000) .setAcceleration(0.00060f, 90) - .setRotationSpeed(144f) + .setRotationSpeedRange(134f, 164f) + .setScaleRange(0.8f, 1.2f) .setSpeedByComponentsRange(-0.15f, 0.15f, -0.15f, -0.45f) .setFadeOut(200, AccelerateInterpolator()) .emitWithGravity(container, Gravity.BOTTOM, 7, 1000) ParticleSystem(container, 30, ContextCompat.getDrawable(container.context, R.drawable.confetti_yellow), 6000) .setAcceleration(0.00070f, 90) - .setRotationSpeed(144f) + .setRotationSpeedRange(134f, 164f) + .setScaleRange(0.8f, 1.2f) .setSpeedByComponentsRange(-0.15f, 0.15f, -0.15f, -0.45f) .setFadeOut(200, AccelerateInterpolator()) .emitWithGravity(container, Gravity.BOTTOM, 7, 1000) ParticleSystem(container, 30, ContextCompat.getDrawable(container.context, R.drawable.confetti_purple), 6000) .setAcceleration(0.00090f, 90) - .setRotationSpeed(144f) + .setRotationSpeedRange(134f, 164f) + .setScaleRange(0.8f, 1.2f) .setSpeedByComponentsRange(-0.15f, 0.15f, -0.15f, -0.45f) .setFadeOut(200, AccelerateInterpolator()) .emitWithGravity(container, Gravity.BOTTOM, 7, 1000) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialog.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialog.kt index 439e23965..9aaedeefe 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialog.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialog.kt @@ -39,6 +39,7 @@ import com.habitrpg.android.habitica.ui.views.insufficientCurrency.InsufficientS import com.habitrpg.android.habitica.ui.views.tasks.form.StepperValueFormView import com.habitrpg.common.habitica.helpers.ExceptionHandler import com.habitrpg.common.habitica.helpers.launchCatching +import dagger.hilt.android.internal.managers.ViewComponentManager import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job import kotlinx.coroutines.MainScope @@ -148,6 +149,20 @@ class PurchaseDialog( setLimitedTextView() } + private fun findSnackBarActivity(context: Context): SnackbarActivity? { + return when (context) { + is SnackbarActivity -> context + is ViewComponentManager.FragmentContextWrapper -> findSnackBarActivity(context.baseContext) + else -> (context.applicationContext as? HabiticaBaseApplication)?.currentActivity?.get() as? SnackbarActivity + } + } + + init { + findSnackBarActivity(context)?.let { + (it as? Activity)?.let { activity -> setOwnerActivity(activity) } + } + } + private fun updatePurchaseTotal() { priceLabel.value = shopItem.value.toDouble() * purchaseQuantity @@ -426,7 +441,8 @@ class PurchaseDialog( content = text, rightIcon = priceLabel.compoundDrawables[0], rightTextColor = rightTextColor, - rightText = "-" + priceLabel.text + rightText = "-" + priceLabel.text, + isCelebratory = true ) inventoryRepository.retrieveInAppRewards() userRepository.retrieveUser(forced = true)