From a6ad2b9815d72575206bdca860eef9db850cdf1c Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Mon, 13 Apr 2026 19:06:54 -0500 Subject: feat(theme): AMOLED true-black rows via themedRow() Apply listRowBackground(Color.black) per row in AMOLED mode using ThemedRowStyle and themedRow() across Lists and Forms. Use themedList() for scroll/grouped backgrounds. Treat segmented and clear list rows with isAMOLED-aware listRowBackground where Color.clear was required. Removes reliance on UIKit appearance for list cells on iOS 16+. Implements: https://todo.sr.ht/~ccleberg/hutch/24 --- Hutch/Views/Tickets/TicketDetailView.swift | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'Hutch/Views/Tickets/TicketDetailView.swift') diff --git a/Hutch/Views/Tickets/TicketDetailView.swift b/Hutch/Views/Tickets/TicketDetailView.swift index 32ef89c..0028083 100644 --- a/Hutch/Views/Tickets/TicketDetailView.swift +++ b/Hutch/Views/Tickets/TicketDetailView.swift @@ -739,8 +739,10 @@ private struct ResolveSheet: View { } .pickerStyle(.inline) .labelsHidden() + .themedRow() } } + .themedList() .navigationTitle("Resolve Ticket") .navigationBarTitleDisplayMode(.inline) .toolbar { @@ -801,6 +803,7 @@ private struct AssignSheet: View { .buttonStyle(.plain) } } + .themedRow() } } @@ -809,6 +812,7 @@ private struct AssignSheet: View { .textContentType(.username) .autocorrectionDisabled() .textInputAutocapitalization(.never) + .themedRow() Button("Add Assignee") { let name = username.trimmingCharacters(in: .whitespacesAndNewlines) @@ -822,8 +826,10 @@ private struct AssignSheet: View { username.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty || viewModel.isPerformingAction ) + .themedRow() } } + .themedList() .navigationTitle("Assignees") .navigationBarTitleDisplayMode(.inline) .toolbar { @@ -877,7 +883,9 @@ private struct LabelsSheet: View { } } } + .themedRow() } + .themedList() } } .navigationTitle("Labels") @@ -917,11 +925,14 @@ private struct CreateLabelSheet: View { Section("Label Details") { TextField("Label name", text: $labelName) .autocorrectionDisabled() + .themedRow() } Section("Colors") { ColorPicker("Background color", selection: $backgroundColor, supportsOpacity: false) + .themedRow() ColorPicker("Text color", selection: $foregroundColor, supportsOpacity: false) + .themedRow() } Section("Preview") { @@ -936,8 +947,10 @@ private struct CreateLabelSheet: View { .clipShape(Capsule()) Spacer() } + .themedRow() } } + .themedList() .navigationTitle("New Label") .navigationBarTitleDisplayMode(.inline) .toolbar { -- cgit v1.2.3