diff --git a/Habitica/AndroidManifest.xml b/Habitica/AndroidManifest.xml
index 3c501e746..29014507c 100644
--- a/Habitica/AndroidManifest.xml
+++ b/Habitica/AndroidManifest.xml
@@ -5,11 +5,8 @@
android:screenOrientation="portrait"
android:installLocation="auto" >
-
-
-
diff --git a/Habitica/build.gradle b/Habitica/build.gradle
index 5e4e1dce1..958b749ca 100644
--- a/Habitica/build.gradle
+++ b/Habitica/build.gradle
@@ -162,8 +162,8 @@ android {
multiDexEnabled true
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 2404
- versionName "2.5"
+ versionCode 2407
+ versionName "2.6"
}
viewBinding {
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/HabiticaAlertDialog.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/HabiticaAlertDialog.kt
index 3d099bff8..99197bcea 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/HabiticaAlertDialog.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/HabiticaAlertDialog.kt
@@ -31,7 +31,7 @@ open class HabiticaAlertDialog(context: Context) : AlertDialog(context, R.style.
private var buttonsWrapper: LinearLayout
private var noticeTextView: TextView
- private var additionalContentView: View? = null
+ internal var additionalContentView: View? = null
var isScrollingLayout: Boolean = false
get() {
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/settings/FixValuesEditText.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/settings/FixValuesEditText.kt
index fce3e9276..44359a55c 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/settings/FixValuesEditText.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/settings/FixValuesEditText.kt
@@ -42,8 +42,7 @@ class FixValuesEditText(context: Context, attrs: AttributeSet) : FrameLayout(con
binding.editTextWrapper.setHintTextAppearance(attributes.getResourceId(R.styleable.FixValuesEditText_hintStyle, R.style.PurpleTextLabel))
iconBackgroundColor = attributes.getColor(R.styleable.FixValuesEditText_iconBgColor, 0)
- val iconName = attributes.getString(R.styleable.FixValuesEditText_fixIconName)
- when (iconName) {
+ when (attributes.getString(R.styleable.FixValuesEditText_fixIconName)) {
"health" -> binding.iconView.setImageBitmap(HabiticaIconsHelper.imageOfHeartLightBg())
"experience" -> binding.iconView.setImageBitmap(HabiticaIconsHelper.imageOfExperience())
"mana" -> binding.iconView.setImageBitmap(HabiticaIconsHelper.imageOfMagic())
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 fda846a9d..6dff63929 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
@@ -213,6 +213,8 @@ class PurchaseDialog(context: Context, component: UserComponent?, val item: Shop
} else {
limitedTextView.setBackgroundColor(ContextCompat.getColor(context, R.color.green_10))
}
+ val gemContent = additionalContentView as? PurchaseDialogGemsContent
+ gemContent?.stepperView?.maxValue = (user?.purchased?.plan?.numberOfGemsLeft() ?: 1).toDouble()
}
buyButton.elevation = 0f
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogGemsContent.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogGemsContent.kt
index f84a51a23..0028cc084 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogGemsContent.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogGemsContent.kt
@@ -25,7 +25,5 @@ internal class PurchaseDialogGemsContent(context: Context) : PurchaseDialogConte
super.setItem(item)
notesTextView.text = item.notes
-
- stepperView.maxValue = item.limitedNumberLeft?.toDouble()
}
}
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/StepperValueFormView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/StepperValueFormView.kt
index eceebaeff..9474944a1 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/StepperValueFormView.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/StepperValueFormView.kt
@@ -54,17 +54,21 @@ class StepperValueFormView @JvmOverloads constructor(
private var valueString = ""
set(value) {
- if (value.isEmpty()) return
+ val hasChanged = field != value || editText.text.toString() != field
field = value
+ if (value.isEmpty()) {
+ onValueChanged?.invoke(0.0)
+ return
+ }
- if (editText.text.toString() != field) {
+ if (hasChanged) {
editText.setText(field)
if (editTextIsFocused) {
editText.setSelection(field.length)
}
}
val newValue = field.toDoubleOrNull() ?: 0.0
- if (this.value != newValue) {
+ if (this.value != newValue || hasChanged) {
this.value = newValue
}
}