diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/NumberButtonView/render_unitless.png b/uhabits-android/src/androidTest/assets/views/habits/list/NumberButtonView/render_unitless.png new file mode 100644 index 000000000..cf16db61f Binary files /dev/null and b/uhabits-android/src/androidTest/assets/views/habits/list/NumberButtonView/render_unitless.png differ diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonViewTest.kt b/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonViewTest.kt index ba417feae..6f1923aaa 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonViewTest.kt +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonViewTest.kt @@ -73,6 +73,13 @@ class NumberButtonViewTest : BaseViewTest() { assertRenders(view, "$PATH/render_above.png") } + @Test + fun testRender_emptyUnits() { + view.value = 500.0 + view.units = "" + assertRenders(view, "$PATH/render_unitless.png") + } + @Test fun testRender_belowThreshold() { view.value = 99.0 diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt index d6e73bcfe..6c8b5c702 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt @@ -275,10 +275,6 @@ class EditHabitActivity : AppCompatActivity() { isValid = false } if (habitType == Habit.NUMBER_HABIT) { - if (unitInput.text.isEmpty()) { - unitInput.error = getFormattedValidationError(R.string.validation_cannot_be_blank) - isValid = false - } if (targetInput.text.isEmpty()) { targetInput.error = getString(R.string.validation_cannot_be_blank) isValid = false diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt index b7517b97b..f4f7cc4ac 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt @@ -186,11 +186,16 @@ class NumberButtonView( pNumber.typeface = typeface pUnit.color = activeColor - rect.set(0f, 0f, width.toFloat(), height.toFloat()) - canvas.drawText(label, rect.centerX(), rect.centerY(), pNumber) - - rect.offset(0f, 1.3f * em) - canvas.drawText(units, rect.centerX(), rect.centerY(), pUnit) + if (units.isBlank()) { + rect.set(0f, 0f, width.toFloat(), height.toFloat()) + rect.offset(0f, 0.5f * em) + canvas.drawText(label, rect.centerX(), rect.centerY(), pNumber) + } else { + rect.set(0f, 0f, width.toFloat(), height.toFloat()) + canvas.drawText(label, rect.centerX(), rect.centerY(), pNumber) + rect.offset(0f, 1.3f * em) + canvas.drawText(units, rect.centerX(), rect.centerY(), pUnit) + } } } }