summaryrefslogtreecommitdiff
path: root/Hutch/Views/Repositories/RepositoryListView.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-13 19:06:54 -0500
committerChristian Cleberg <[email protected]>2026-04-13 19:06:54 -0500
commita6ad2b9815d72575206bdca860eef9db850cdf1c (patch)
treeb4d5f27aa1655e5e40bab178550d6e2576d7df8b /Hutch/Views/Repositories/RepositoryListView.swift
parent02a44d115b3784231cad640e992d9c18a7f67b40 (diff)
downloadhutch-a6ad2b9815d72575206bdca860eef9db850cdf1c.tar.gz
hutch-a6ad2b9815d72575206bdca860eef9db850cdf1c.tar.bz2
hutch-a6ad2b9815d72575206bdca860eef9db850cdf1c.zip
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
Diffstat (limited to 'Hutch/Views/Repositories/RepositoryListView.swift')
-rw-r--r--Hutch/Views/Repositories/RepositoryListView.swift11
1 files changed, 11 insertions, 0 deletions
diff --git a/Hutch/Views/Repositories/RepositoryListView.swift b/Hutch/Views/Repositories/RepositoryListView.swift
index 0258a58..08ebb5c 100644
--- a/Hutch/Views/Repositories/RepositoryListView.swift
+++ b/Hutch/Views/Repositories/RepositoryListView.swift
@@ -78,6 +78,7 @@ struct RepositoryListView: View {
.foregroundStyle(.secondary)
}
.listRowSeparator(.hidden)
+ .themedRow()
}
ForEach(viewModel.repositories) { repo in
@@ -89,6 +90,7 @@ struct RepositoryListView: View {
}
.alignmentGuide(.listRowSeparatorLeading) { _ in 0 }
}
+ .themedRow()
if viewModel.isLoadingMore {
HStack {
@@ -97,6 +99,7 @@ struct RepositoryListView: View {
Spacer()
}
.listRowSeparator(.hidden)
+ .themedRow()
}
}
.themedList()
@@ -223,16 +226,20 @@ private struct CreateRepositorySheet: View {
Text(service.displayName).tag(service)
}
}
+ .themedRow()
TextField("Repository name", text: $name)
.textInputAutocapitalization(.never)
.autocorrectionDisabled()
+ .themedRow()
TextField("Short description (optional)", text: $description, axis: .vertical)
.lineLimit(2...4)
+ .themedRow()
Picker("Visibility", selection: $visibility) {
Text("Public").tag(Visibility.public)
Text("Unlisted").tag(Visibility.unlisted)
Text("Private").tag(Visibility.private)
}
+ .themedRow()
}
Section("Import Existing Repository") {
@@ -241,16 +248,20 @@ private struct CreateRepositorySheet: View {
.textInputAutocapitalization(.never)
.autocorrectionDisabled()
.keyboardType(.URL)
+ .themedRow()
Text("Import an existing Git repository from a remote URL.")
.font(.footnote)
.foregroundStyle(.secondary)
+ .themedRow()
} else {
Text("Importing a Mercurial repository from a remote URL is not available through the public API.")
.font(.footnote)
.foregroundStyle(.secondary)
+ .themedRow()
}
}
}
+ .themedList()
.navigationTitle(service == .git ? "New Git Repository" : "New Mercurial Repository")
.navigationBarTitleDisplayMode(.inline)
.toolbar {