diff options
| author | Fuwn <[email protected]> | 2025-06-18 04:39:23 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-06-18 04:39:23 -0700 |
| commit | c2adf048f5e08d24b8101ae4ae9912b770a836ad (patch) | |
| tree | 99bcd9c54752503c9c17fc69ee24b08fd1b70bcf /Sora/Views | |
| parent | feat: Development commit (diff) | |
| download | sora-testing-c2adf048f5e08d24b8101ae4ae9912b770a836ad.tar.xz sora-testing-c2adf048f5e08d24b8101ae4ae9912b770a836ad.zip | |
feat: Development commit
Diffstat (limited to 'Sora/Views')
| -rw-r--r-- | Sora/Views/Post/Details/PostDetailsTagsView.swift | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/Sora/Views/Post/Details/PostDetailsTagsView.swift b/Sora/Views/Post/Details/PostDetailsTagsView.swift index 803273b..a8c3abc 100644 --- a/Sora/Views/Post/Details/PostDetailsTagsView.swift +++ b/Sora/Views/Post/Details/PostDetailsTagsView.swift @@ -7,27 +7,34 @@ struct PostDetailsTagsView: View { var tags: [String] var body: some View { + let bookmarkedTags = Set(settings.bookmarks.flatMap(\.tags)) + List { ForEach(tags, id: \.self) { tag in Button(action: { - manager.searchText = tag + Task { @MainActor in + manager.searchText = tag - search() + search() + } }) { Text(tag) } + .id(tag) .contextMenu { if !manager.searchText.contains(tag) { Button(action: { - manager.searchText += " \(tag)" + Task { @MainActor in + manager.searchText += " \(tag)" - search() + search() + } }) { Label("Add to Search", systemImage: "plus") } } - let isBookmarked = settings.bookmarks.contains { $0.tags.contains(tag) } + let isBookmarked = bookmarkedTags.contains(tag) Button(action: { if isBookmarked { |