← All repositories

listless

A simple list app for Apple platforms

git clone https://code.inqk.net/listless.git


commit c990a8dc3d4cf9106d428bcc8f42b847f6bbdbc9
parent 59905f028de91c4e3360a615cf448f9b8ccf217d
Author: Michael Camilleri <[email protected]>
Date:   Tue, 24 Mar 2026 14:26:07 +0900

Support tap to uncomplete on item bodies in iOS version

Diffstat

MListlessiOS/Helpers/TappableTextField.swift | 1+
MListlessiOS/Views/TaskRowView.swift | 9+++++++--

2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ListlessiOS/Helpers/TappableTextField.swift b/ListlessiOS/Helpers/TappableTextField.swift

@@ -60,6 +60,7 @@ struct TappableTextField: UIViewRepresentable {
         textView.accessibilityIdentifier = uiAccessibilityIdentifier
         textView.isEditable = !isCompleted
         textView.isSelectable = !isCompleted
+        textView.isUserInteractionEnabled = !isCompleted
         // Defer isDragging updates to break an AttributeGraph cycle: setting
         // isEditable/isSelectable during updateUIView causes UITextView to
         // invalidate its intrinsic content size, creating a layout-to-state

diff --git a/ListlessiOS/Views/TaskRowView.swift b/ListlessiOS/Views/TaskRowView.swift

@@ -122,8 +122,13 @@ struct TaskRowView: View {
             {
                 return
             }
-            onSelect(taskID)
-            if !task.isCompleted {
+            if task.isCompleted {
+                withAnimation {
+                    onSelect(taskID)
+                    onToggle(task)
+                }
+            } else {
+                onSelect(taskID)
                 focusedField = .task(taskID)
             }
         }