diff --git a/Habitica/build.gradle b/Habitica/build.gradle
index c17a07586..820919791 100644
--- a/Habitica/build.gradle
+++ b/Habitica/build.gradle
@@ -165,7 +165,7 @@ android {
buildConfigField "String", "TESTING_LEVEL", "\"production\""
resConfigs 'en', 'bg', 'de', 'en-rGB', 'es', 'fr', 'hr-rHR', 'in', 'it', 'iw', 'ja', 'ko', 'lt', 'nl', 'pl', 'pt-rBR', 'pt-rPT', 'ru', 'tr', 'zh', 'zh-rTW'
- versionCode 3502
+ versionCode 3503
versionName "3.6"
targetSdkVersion 32
diff --git a/Habitica/res/layout/activity_armoire.xml b/Habitica/res/layout/activity_armoire.xml
index bbcaf28b5..898cd34d9 100644
--- a/Habitica/res/layout/activity_armoire.xml
+++ b/Habitica/res/layout/activity_armoire.xml
@@ -39,10 +39,15 @@
android:id="@+id/icon_wrapper"
android:layout_width="165dp"
android:layout_height="158dp"
- android:background="@drawable/circle_gray_700"
android:layout_marginTop="23dp"
android:layout_marginBottom="23dp"
- android:visibility="invisible">
+ android:visibility="invisible"
+ tools:visibility="visible">
+
+ android:paddingTop="36dp">
// If the gift and the purchase happened within 5 minutes, we consider them to match.
// Otherwise the gift is probably an old one that wasn't cleared out correctly
- if (kotlin.math.abs(gift.first.time - purchase.purchaseTime) < 300000) {
+ if (kotlin.math.abs(gift.first.time - purchase.purchaseTime) < 5.toDuration(DurationUnit.MINUTES).inWholeMilliseconds) {
validationRequest.gift = IAPGift(gift.second)
} else {
removeGift(validationRequest.sku ?: "")
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ArmoireActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ArmoireActivity.kt
index 819e87c21..c8cd4ab0a 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ArmoireActivity.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ArmoireActivity.kt
@@ -20,6 +20,7 @@ import com.habitrpg.android.habitica.helpers.AdType
import com.habitrpg.android.habitica.helpers.Animations
import com.habitrpg.android.habitica.helpers.AppConfigManager
import com.habitrpg.android.habitica.helpers.RxErrorHandler
+import com.habitrpg.android.habitica.ui.helpers.loadImage
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import com.habitrpg.android.habitica.ui.views.ads.AdButton
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaBottomSheetDialog
@@ -27,7 +28,6 @@ import com.plattysoft.leonids.ParticleSystem
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import javax.inject.Inject
-import com.habitrpg.android.habitica.ui.helpers.loadImage
class ArmoireActivity: BaseActivity() {
@@ -155,7 +155,7 @@ class ArmoireActivity: BaseActivity() {
lifecycleScope.launch {
delay(100)
if (binding.iconWrapper.isAttachedToWindow) {
- Animations.circularReveal(binding.iconWrapper, 400)
+ Animations.circularReveal(binding.iconWrapper, 300)
}
binding.leftSparkView.startAnimating()
binding.rightSparkView.startAnimating()
@@ -163,13 +163,13 @@ class ArmoireActivity: BaseActivity() {
binding.titleView.animate().apply {
alpha(1f)
- duration = 400
+ duration = 300
startDelay = 600
start()
}
binding.subtitleView.animate().apply {
alpha(1f)
- duration = 400
+ duration = 300
startDelay = 900
start()
}
@@ -206,7 +206,9 @@ class ArmoireActivity: BaseActivity() {
else -> {
binding.subtitleView.text = getString(R.string.armoireExp_new, value)
binding.iconView.setImageResource(R.drawable.armoire_experience)
- binding.iconView.layoutParams = RelativeLayout.LayoutParams(108.dpToPx(this), 122.dpToPx(this))
+ val layoutParams = RelativeLayout.LayoutParams(108.dpToPx(this), 122.dpToPx(this))
+ layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT)
+ binding.iconView.layoutParams = layoutParams
}
}
}