From aa288ac4061238648d8754154189f6432ba9dbc3 Mon Sep 17 00:00:00 2001 From: "Alinson S. Xavier" Date: Thu, 26 Nov 2020 15:36:44 -0600 Subject: [PATCH] Make question marks optional Fixes #96 --- .../habits/list/views/CheckmarkButtonView.kt | 5 ++++- .../uhabits/widgets/views/CheckmarkWidgetView.java | 14 +++++++++++++- .../src/main/res/values/strings.xml | 2 ++ .../src/main/res/xml/preferences.xml | 7 +++++++ .../uhabits/core/preferences/Preferences.java | 4 ++++ 5 files changed, 30 insertions(+), 2 deletions(-) diff --git a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt index 4b55d1b97..e59b165b7 100644 --- a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt +++ b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt @@ -114,7 +114,10 @@ class CheckmarkButtonView( val id = when (value) { SKIP -> R.string.fa_skipped NO -> R.string.fa_times - UNKNOWN -> R.string.fa_question + UNKNOWN -> { + if(preferences.areQuestionMarksEnabled()) R.string.fa_question + else R.string.fa_times + } else -> R.string.fa_check } val label = resources.getString(id) diff --git a/android/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.java b/android/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.java index fd554d2c7..91747167e 100644 --- a/android/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.java +++ b/android/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.java @@ -31,6 +31,7 @@ import org.isoron.uhabits.*; import org.isoron.uhabits.activities.habits.list.views.*; import org.isoron.uhabits.core.models.*; import org.isoron.uhabits.activities.common.views.*; +import org.isoron.uhabits.core.preferences.*; import org.isoron.uhabits.utils.*; import static org.isoron.androidbase.utils.InterfaceUtils.getDimension; @@ -53,6 +54,8 @@ public class CheckmarkWidgetView extends HabitWidgetView { protected boolean isNumerical; + private Preferences preferences; + public CheckmarkWidgetView(Context context) { super(context); @@ -121,7 +124,12 @@ public class CheckmarkWidgetView extends HabitWidgetView { case Checkmark.SKIP: return getResources().getString(R.string.fa_skipped); case Checkmark.UNKNOWN: - return getResources().getString(R.string.fa_question); + { + if (preferences.areQuestionMarksEnabled()) + return getResources().getString(R.string.fa_question); + else + getResources().getString(R.string.fa_times); + } case Checkmark.NO: default: return getResources().getString(R.string.fa_times); @@ -196,6 +204,10 @@ public class CheckmarkWidgetView extends HabitWidgetView { private void init() { + HabitsApplicationComponent appComponent; + appComponent = (HabitsApplicationComponent) getContext().getApplicationContext(); + preferences = appComponent.getPreferences(); + ring = (RingView) findViewById(R.id.scoreRing); label = (TextView) findViewById(R.id.label); diff --git a/android/uhabits-android/src/main/res/values/strings.xml b/android/uhabits-android/src/main/res/values/strings.xml index 7f807dccd..3ed35315c 100644 --- a/android/uhabits-android/src/main/res/values/strings.xml +++ b/android/uhabits-android/src/main/res/values/strings.xml @@ -203,4 +203,6 @@ Decrement Enable skip days Toggle twice to add a skip instead of a checkmark. Skips keep your score unchanged and don\'t break your streak. + Show question marks for missing data + Differentiate days without data from actual lapses. To enter a lapse, toggle twice. \ No newline at end of file diff --git a/android/uhabits-android/src/main/res/xml/preferences.xml b/android/uhabits-android/src/main/res/xml/preferences.xml index 7b0d75489..183447762 100644 --- a/android/uhabits-android/src/main/res/xml/preferences.xml +++ b/android/uhabits-android/src/main/res/xml/preferences.xml @@ -38,6 +38,13 @@ android:title="@string/pref_skip_title" app:iconSpaceReserved="false" /> + +