From c2a941cd0cb15be79b90cdecde2878a21dc8e3ff Mon Sep 17 00:00:00 2001 From: opficdev Date: Sun, 4 Oct 2026 23:59:09 +0900 Subject: [PATCH 1/4] =?UTF-8?q?ui:=20Todo=20=EC=98=B5=EC=85=98=20=EC=8B=9C?= =?UTF-8?q?=ED=8A=B8=20=ED=83=91=EB=B0=94=EB=A5=BC=20=EB=8B=A4=EB=A5=B8=20?= =?UTF-8?q?=ED=99=94=EB=A9=B4=EA=B3=BC=20=EA=B0=99=EC=9D=80=20=EA=B5=AC?= =?UTF-8?q?=EC=A1=B0=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Todo/Editor/TodoPropertiesView.swift | 65 +++++++++---------- 1 file changed, 32 insertions(+), 33 deletions(-) diff --git a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift index 989bcee1..0ee9eb4e 100644 --- a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift +++ b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift @@ -30,46 +30,45 @@ public struct TodoPropertiesView: View { } public var body: some View { - ZStack { - Color.appBackground.ignoresSafeArea() - VStack(spacing: 8) { - toolBar - content - } - } + content + .safeAreaInset(edge: .top, spacing: 0) { toolBar } + .background(Color.appBackground.ignoresSafeArea()) + .presentationDragIndicator(.visible) } private var toolBar: some View { - HStack { - Spacer() - if showsEditorActions { - EditorToolbarActions(store: store, onSubmit: onSubmit) - } else { - if #available(iOS 26.0, *) { - Button { - onClose() - } label: { - Image(systemName: "xmark") - } - .topBarButtonStyle(tint: Color.accent) - } else { - Button { - onClose() - } label: { - Text(String(localized: "common_done", bundle: PresentationResources.bundle)) - } - .topBarButtonStyle(tint: Color.accent) - } - } - } - .padding(.horizontal) - .padding(.top, 12) - .overlay { + ZStack { if !showsEditorActions { Text(String(localized: "todo_details", bundle: PresentationResources.bundle)) - .font(.title3.bold()) + .font(.headline) + } + HStack { + if !showsEditorActions { + if #available(iOS 26.0, *) { + Button { + onClose() + } label: { + Image(systemName: "xmark") + } + .topBarButtonStyle() + } else { + Button { + onClose() + } label: { + Text(String(localized: "common_done", bundle: PresentationResources.bundle)) + } + .topBarButtonStyle(tint: Color.accent) + } + } + Spacer() + if showsEditorActions { + EditorToolbarActions(store: store, onSubmit: onSubmit) + } } } + .padding(.horizontal, 16) + .padding(.vertical, 12) + .background(Color.appBackground, ignoresSafeAreaEdges: .top) } private var content: some View { From e9464e952691890a306685081af321fb7a5e655a Mon Sep 17 00:00:00 2001 From: opficdev Date: Sun, 4 Oct 2026 23:59:09 +0900 Subject: [PATCH 2/4] =?UTF-8?q?ui:=20Todo=20=EC=98=B5=EC=85=98=20=EC=B9=B4?= =?UTF-8?q?=EB=93=9C=EC=9D=98=20=ED=85=8C=EB=91=90=EB=A6=AC=20=EC=A0=9C?= =?UTF-8?q?=EA=B1=B0=EC=99=80=20=EC=97=AC=EB=B0=B1=20=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Todo/Editor/TodoPropertiesView.swift | 28 ++++++------------- 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift index 0ee9eb4e..ba10bfb2 100644 --- a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift +++ b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift @@ -119,17 +119,14 @@ public struct TodoPropertiesView: View { dueDateControl .padding(.vertical, 12) } - .padding(.horizontal, 20) + .padding(.horizontal, 16) .padding(.vertical, 8) - .background { - RoundedRectangle(cornerRadius: 16) - .fill(Color.surface) - .strokeBorder(Color.border, lineWidth: 2) - } + .background(Color.surface, in: .rect(cornerRadius: 16)) VStack(alignment: .leading, spacing: 12) { Text(String(localized: "todo_tags", bundle: PresentationResources.bundle)) .font(.headline) + .padding(.horizontal, 16) VStack(alignment: .leading, spacing: 16) { HStack(spacing: 12) { TextField( @@ -142,11 +139,7 @@ public struct TodoPropertiesView: View { .onSubmit { submitTag() } .padding(.vertical, 8) .padding(.horizontal, 12) - .background { - RoundedRectangle(cornerRadius: 12) - .fill(Color.surfaceSecondary) - .strokeBorder(Color.border, lineWidth: 2) - } + .background(Color.surfaceSecondary, in: .rect(cornerRadius: 12)) .tint(Color.accent) Button { @@ -181,16 +174,13 @@ public struct TodoPropertiesView: View { bundle: PresentationResources.bundle )) } - .padding(20) - .background { - RoundedRectangle(cornerRadius: 16) - .fill(Color.surface) - .strokeBorder(Color.border, lineWidth: 2) - } + .padding(16) + .frame(maxWidth: .infinity, alignment: .leading) + .background(Color.surface, in: .rect(cornerRadius: 16)) } } - .padding(.horizontal, 20) - .padding(.bottom, 20) + .padding(.horizontal, 16) + .padding(.bottom, 16) } .contentMargins(.top, 16, for: .scrollContent) } From abdcd43a4db73e488da4ed8264d1368ebcfae6d6 Mon Sep 17 00:00:00 2001 From: opficdev Date: Sun, 4 Oct 2026 23:59:09 +0900 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20Todo=20=EC=98=B5=EC=85=98=EC=9D=98?= =?UTF-8?q?=20=EC=B9=B4=ED=85=8C=EA=B3=A0=EB=A6=AC=20=EB=9D=BC=EB=B2=A8=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=EC=99=80=20=EB=A7=88=EA=B0=90=EC=9D=BC=20?= =?UTF-8?q?=ED=85=8D=EC=8A=A4=ED=8A=B8=20=EC=83=89=EC=83=81=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Sources/Todo/Editor/TodoPropertiesView.swift | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift index ba10bfb2..d08d5749 100644 --- a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift +++ b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoPropertiesView.swift @@ -77,6 +77,7 @@ public struct TodoPropertiesView: View { VStack(spacing: 0) { HStack(spacing: 12) { optionIcon("tag.fill", color: Color.accent) + Text(String(localized: "todo_category", bundle: PresentationResources.bundle)) Spacer() Picker( String(localized: "todo_category", bundle: PresentationResources.bundle), @@ -198,7 +199,7 @@ public struct TodoPropertiesView: View { HStack(spacing: 12) { optionIcon("calendar", color: Color.textSecondary) Text(String(localized: "todo_due_date", bundle: PresentationResources.bundle)) - .foregroundStyle(.primary) + .foregroundStyle(Color.primary) Spacer() if let dueDate = store.dueDate { Tag(dueDateText(for: dueDate), isEditing: true) { @@ -207,7 +208,7 @@ public struct TodoPropertiesView: View { .padding(.vertical, -4) } else { Text(String(localized: "todo_none", bundle: PresentationResources.bundle)) - .foregroundStyle(.secondary) + .foregroundStyle(Color.textSecondary) } } } From 902c79aa7da9bf6e801d6866fd53db49f2808456 Mon Sep 17 00:00:00 2001 From: opficdev Date: Sun, 4 Oct 2026 23:59:09 +0900 Subject: [PATCH 4/4] =?UTF-8?q?ui:=20Todo=20=EC=98=B5=EC=85=98=20=EC=8B=9C?= =?UTF-8?q?=ED=8A=B8=EB=A5=BC=20=EC=A0=84=EC=B2=B4=20=EB=86=92=EC=9D=B4?= =?UTF-8?q?=EB=A1=9C=20=EA=B3=A0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PresentationShared/Sources/Todo/Editor/TodoEditorView.swift | 1 + 1 file changed, 1 insertion(+) diff --git a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoEditorView.swift b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoEditorView.swift index f57c781c..4a421602 100644 --- a/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoEditorView.swift +++ b/Application/Presentation/PresentationShared/Sources/Todo/Editor/TodoEditorView.swift @@ -107,6 +107,7 @@ public struct TodoEditorView: View { } } .inspectorColumnWidth(min: 320, ideal: 420, max: 520) + .presentationDetents([.large]) } } }