diff options
| author | Fuwn <[email protected]> | 2025-06-15 04:19:27 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-06-15 04:19:27 -0700 |
| commit | a048e8ac643b7ff0fd8da677a0a4eee51b91762c (patch) | |
| tree | 6c8a992d89d594484093e7d530a7c8696c3c3115 | |
| parent | feat: Development commit (diff) | |
| download | sora-testing-a048e8ac643b7ff0fd8da677a0a4eee51b91762c.tar.xz sora-testing-a048e8ac643b7ff0fd8da677a0a4eee51b91762c.zip | |
feat: Development commit
| -rw-r--r-- | Sora/Views/Generic/GenericItemView.swift | 49 | ||||
| -rw-r--r-- | Sora/Views/Generic/GenericListView.swift | 4 |
2 files changed, 23 insertions, 30 deletions
diff --git a/Sora/Views/Generic/GenericItemView.swift b/Sora/Views/Generic/GenericItemView.swift index be5611a..99c4f0a 100644 --- a/Sora/Views/Generic/GenericItemView.swift +++ b/Sora/Views/Generic/GenericItemView.swift @@ -5,41 +5,32 @@ struct GenericItemView<T: GenericItem>: View { let item: T let removeAction: (UUID) -> Void - var body: some View { - #if os(macOS) - HStack { - VStack(alignment: .leading) { - Text(item.tags.joined(separator: ", ").lowercased()) + @ViewBuilder + private func itemContent(includeSpacer: Bool = false) -> some View { + Text(item.tags.joined(separator: ", ").lowercased()) - Spacer() + if includeSpacer { Spacer() } - Text("On \(item.date.formatted()) from \(item.provider.rawValue)") - .font(.caption) - .foregroundStyle(Color.secondary) + Text("On \(item.date.formatted()) from \(item.provider.rawValue)") + .font(.caption) + .foregroundStyle(Color.secondary) - if let folder = item.folder, let folderName = settings.folderName(forID: folder) { - Text("In \(folderName)") - .font(.caption) - .foregroundStyle(Color.secondary) - } - - Spacer() - } - } - #else - VStack(alignment: .leading) { - Text(item.tags.joined(separator: ", ").lowercased()) + if let folder = item.folder, let folderName = settings.folderName(forID: folder) { + Text("In \(folderName)") + .font(.caption) + .foregroundStyle(Color.secondary) + } - Text("On \(item.date.formatted()) from \(item.provider.rawValue)") - .font(.caption) - .foregroundStyle(Color.secondary) + if includeSpacer { Spacer() } + } - if let folder = item.folder, let folderName = settings.folderName(forID: folder) { - Text("In \(folderName)") - .font(.caption) - .foregroundStyle(Color.secondary) - } + var body: some View { + #if os(macOS) + HStack { + VStack(alignment: .leading) { itemContent(includeSpacer: true) } } + #else + VStack(alignment: .leading) { itemContent() } #endif } } diff --git a/Sora/Views/Generic/GenericListView.swift b/Sora/Views/Generic/GenericListView.swift index 8337508..3825454 100644 --- a/Sora/Views/Generic/GenericListView.swift +++ b/Sora/Views/Generic/GenericListView.swift @@ -125,7 +125,9 @@ struct GenericListView<T: Identifiable & Hashable & GenericItem>: View { // swi if allowBookmarking { listContent - .searchable(text: $searchText, placement: .navigationBarDrawer) + #if os(iOS) + .searchable(text: $searchText, placement: .navigationBarDrawer) + #endif } else { listContent.searchable(text: $searchText) } |