diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitActivity.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitActivity.kt index ba3fcbc4f..a5e8ab9f1 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitActivity.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitActivity.kt @@ -203,7 +203,8 @@ class ShowHabitActivity : AppCompatActivity(), CommandRunner.Listener { } private fun getPopupAnchor(): View? { - val dialog = supportFragmentManager.findFragmentByTag("historyEditor") as HistoryEditorDialog? + val dialog = + supportFragmentManager.findFragmentByTag("historyEditor") as HistoryEditorDialog? return dialog?.dataView } @@ -216,6 +217,25 @@ class ShowHabitActivity : AppCompatActivity(), CommandRunner.Listener { ShowHabitMenuPresenter.Message.COULD_NOT_EXPORT -> { showMessage(resources.getString(R.string.could_not_export)) } + + ShowHabitMenuPresenter.Message.HABIT_ARCHIVED -> { + showMessage( + resources.getQuantityString( + R.plurals.toast_habits_archived, + 1 + ) + ) + } + + ShowHabitMenuPresenter.Message.HABIT_UNARCHIVED -> { + showMessage( + resources.getQuantityString( + R.plurals.toast_habits_unarchived, + 1 + ) + ) + } + else -> {} } } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitMenu.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitMenu.kt index 22737c753..cd2a72bf5 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitMenu.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/ShowHabitMenu.kt @@ -35,6 +35,9 @@ class ShowHabitMenu( if (preferences.isDeveloper) { menu.findItem(R.id.action_randomize).isVisible = true } + menu.findItem(R.id.action_archive_habit).isVisible = presenter.canArchive() + menu.findItem(R.id.action_unarchive_habit).isVisible = presenter.canUnarchive() + return true } @@ -44,6 +47,15 @@ class ShowHabitMenu( presenter.onEditHabit() return true } + R.id.action_archive_habit -> { + presenter.onArchiveHabits() + return true + } + + R.id.action_unarchive_habit -> { + presenter.onUnarchiveHabits() + return true + } R.id.action_delete -> { presenter.onDeleteHabit() return true diff --git a/uhabits-android/src/main/res/menu/show_habit.xml b/uhabits-android/src/main/res/menu/show_habit.xml index 4611cbee1..982de09a1 100644 --- a/uhabits-android/src/main/res/menu/show_habit.xml +++ b/uhabits-android/src/main/res/menu/show_habit.xml @@ -26,6 +26,16 @@ android:title="@string/export" app:showAsAction="never"/> + + + + strength) continue var value = Entry.YES_MANUAL - if (habit.isNumerical) value = (1000 + 250 * random.nextGaussian() * strength / 100).toInt() * 1000 + if (habit.isNumerical) { + value = + (1000 + 250 * random.nextGaussian() * strength / 100).toInt() * 1000 + } habit.originalEntries.add(Entry(DateUtils.getToday().minus(i), value)) } habit.recompute() @@ -80,7 +104,9 @@ class ShowHabitMenuPresenter( } enum class Message { - COULD_NOT_EXPORT + COULD_NOT_EXPORT, + HABIT_ARCHIVED, + HABIT_UNARCHIVED } interface Screen {