From 3a46b53d44d82c51ed6ee2ae23fe274eafeb0a83 Mon Sep 17 00:00:00 2001
From: lessershell <120104512+lessershell@users.noreply.github.com>
Date: Sat, 19 Apr 2025 16:26:22 +0100
Subject: [PATCH] Adds a way to change checkmark size in list view
---
.../habits/list/views/CheckmarkButtonView.kt | 2 ++
.../activities/settings/SettingsFragment.kt | 4 ++++
.../src/main/res/values/constants.xml | 16 ++++++++++++++++
uhabits-android/src/main/res/values/strings.xml | 1 +
uhabits-android/src/main/res/xml/preferences.xml | 9 +++++++++
.../uhabits/core/preferences/Preferences.kt | 5 +++++
6 files changed, 37 insertions(+)
diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt
index 3cf77789e..c0e199bcc 100644
--- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt
+++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt
@@ -179,6 +179,8 @@ class CheckmarkButtonView(
paint.style = Paint.Style.FILL
}
+ paint.textSize *= preferences.taskViewCheckmarkScaleFactor
+
val label = resources.getString(id)
val em = paint.measureText("m")
diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/settings/SettingsFragment.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/settings/SettingsFragment.kt
index 0fc1f43c8..0c6497fc2 100644
--- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/settings/SettingsFragment.kt
+++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/settings/SettingsFragment.kt
@@ -151,6 +151,10 @@ class SettingsFragment : PreferenceFragmentCompat(), OnSharedPreferenceChangeLis
Log.d("SettingsFragment", "updating widgets")
widgetUpdater!!.updateWidgets()
}
+ if (key == "pref_task_view_checkmark_scale_factor" && widgetUpdater != null) {
+ Log.d("SettingsFragment", "updating widgets")
+ widgetUpdater!!.updateWidgets()
+ }
BackupManager.dataChanged("org.isoron.uhabits")
updateWeekdayPreference()
}
diff --git a/uhabits-android/src/main/res/values/constants.xml b/uhabits-android/src/main/res/values/constants.xml
index cc5635954..f70fd7043 100644
--- a/uhabits-android/src/main/res/values/constants.xml
+++ b/uhabits-android/src/main/res/values/constants.xml
@@ -94,4 +94,20 @@
- 51
- 0
+
+
+ - 5x
+ - 4x
+ - 3x
+ - 2x
+ - 1x
+
+
+
+ - 5
+ - 4
+ - 3
+ - 2
+ - 1
+
diff --git a/uhabits-android/src/main/res/values/strings.xml b/uhabits-android/src/main/res/values/strings.xml
index 9fec1cbca..1b0733768 100644
--- a/uhabits-android/src/main/res/values/strings.xml
+++ b/uhabits-android/src/main/res/values/strings.xml
@@ -233,4 +233,5 @@
No app was found to support this action
Extend day a few hours past midnight
Wait until 3:00 AM to show a new day. Useful if you typically go to sleep after midnight. Requires app restart.
+ Task View Checkmark scale factor
diff --git a/uhabits-android/src/main/res/xml/preferences.xml b/uhabits-android/src/main/res/xml/preferences.xml
index ad381b502..d470af826 100644
--- a/uhabits-android/src/main/res/xml/preferences.xml
+++ b/uhabits-android/src/main/res/xml/preferences.xml
@@ -81,6 +81,15 @@
android:title="@string/first_day_of_the_week"
app:iconSpaceReserved="false" />
+
+