From bed7a55a28aac0b24d15890937159c4bb4c2adc3 Mon Sep 17 00:00:00 2001 From: neon443 <69979447+neon443@users.noreply.github.com> Date: Tue, 11 Nov 2025 21:04:55 +0000 Subject: [PATCH] morphy search button/tab ios 26 fix missing sf symbol --- StickerSlack/SwiftUI/ContentView.swift | 121 ++++++++++------------ StickerSlack/SwiftUI/DownloadedView.swift | 2 +- StickerSlack/Trie/TrieTestingView.swift | 2 +- 3 files changed, 59 insertions(+), 66 deletions(-) diff --git a/StickerSlack/SwiftUI/ContentView.swift b/StickerSlack/SwiftUI/ContentView.swift index eab9fc8..e07b8fd 100644 --- a/StickerSlack/SwiftUI/ContentView.swift +++ b/StickerSlack/SwiftUI/ContentView.swift @@ -12,75 +12,68 @@ struct ContentView: View { @ObservedObject var hoarder: EmojiHoarder = EmojiHoarder() var body: some View { - NavigationSplitView { - if #available(iOS 18, *) { - TabView { - Tab("Browse", systemImage: "square.grid.2x2.fill") { - BrowseView(hoarder: hoarder) - } - -// Tab { -// List { -// Text("\(searchTerm.isEmpty ? hoarder.emojis.count : hoarder.filteredEmojis.count) Emoji") -// -// ForEach(hoarder.filteredEmojis, id: \.self) { name in -// if let emoji = hoarder.trie.dict[name] { -// EmojiRow(emoji: emoji) -// } -// } -// } -// .onChange(of: searchTerm) { _ in -// hoarder.filterEmojis(by: searchTerm) -// } -// .refreshable { -// Task.detached { -// await hoarder.refreshDB() -// } -// searchTerm = "" -// } -// } label: { -// Label("Search", systemImage: "magnifyingglass") -// } - - Tab("Downloaded", systemImage: "arrow.down.circle.fill") { - DownloadedView(hoarder: hoarder) - } - - Tab("Tree", systemImage: "tree.fill") { - TrieTestingView(hoarder: hoarder) - } - - Tab("Search", systemImage: "magnifyingglass", role: .search) { - NavigationStack { - SearchView(hoarder: hoarder) - } - } - } - .searchable(text: $hoarder.searchTerm, placement: .navigationBarDrawer) -// .searchable(text: $hoarder.searchTerm) -// .modifier(tabViewActivationSearchActivation()) - } else { - TabView { - DownloadedView(hoarder: hoarder) - .tabItem { - Label("Downloaded", systemImage: "arrow.down.circle.fill") - } + if #available(iOS 18, *) { + TabView { + Tab("Browse", systemImage: "square.grid.2x2.fill") { BrowseView(hoarder: hoarder) - .tabItem { - Label("Browse", systemImage: "square.grid.2x2.fill") - } + } + + // Tab { + // List { + // Text("\(searchTerm.isEmpty ? hoarder.emojis.count : hoarder.filteredEmojis.count) Emoji") + // + // ForEach(hoarder.filteredEmojis, id: \.self) { name in + // if let emoji = hoarder.trie.dict[name] { + // EmojiRow(emoji: emoji) + // } + // } + // } + // .onChange(of: searchTerm) { _ in + // hoarder.filterEmojis(by: searchTerm) + // } + // .refreshable { + // Task.detached { + // await hoarder.refreshDB() + // } + // searchTerm = "" + // } + // } label: { + // Label("Search", systemImage: "magnifyingglass") + // } + + Tab("Downloaded", systemImage: "arrow.down.circle.fill") { + DownloadedView(hoarder: hoarder) + } + + Tab("Tree", systemImage: "tree.fill") { TrieTestingView(hoarder: hoarder) - .tabItem { - Label("Trie", systemImage: "tree.fill") - } + } + + Tab(role: .search) { SearchView(hoarder: hoarder) - .tabItem { - Label("Search", systemImage: "magnifyingglass") - } } } - } detail: { - Text("") + .searchable(text: $hoarder.searchTerm) + } else { + TabView { + DownloadedView(hoarder: hoarder) + .tabItem { + Label("Downloaded", systemImage: "arrow.down.circle.fill") + } + BrowseView(hoarder: hoarder) + .tabItem { + Label("Browse", systemImage: "square.grid.2x2.fill") + } + TrieTestingView(hoarder: hoarder) + .tabItem { + Label("Trie", systemImage: "tree.fill") + } + SearchView(hoarder: hoarder) + .tabItem { + Label("Search", systemImage: "magnifyingglass") + } + } + .searchable(text: $hoarder.searchTerm) } } } diff --git a/StickerSlack/SwiftUI/DownloadedView.swift b/StickerSlack/SwiftUI/DownloadedView.swift index 23e190f..6473bb5 100644 --- a/StickerSlack/SwiftUI/DownloadedView.swift +++ b/StickerSlack/SwiftUI/DownloadedView.swift @@ -41,7 +41,7 @@ struct DownloadedView: View { .clipShape(RoundedRectangle(cornerRadius: 15)) .contextMenu { Text(emoji.name) - Button("Copy Name", systemImage: "document.on.document") { + Button("Copy Name", systemImage: "doc.on.clipboard") { UIPasteboard.general.string = emoji.name } Button("Copy Image", systemImage: "photo.fill.on.rectangle.fill") { diff --git a/StickerSlack/Trie/TrieTestingView.swift b/StickerSlack/Trie/TrieTestingView.swift index 598c4a0..691c5ff 100644 --- a/StickerSlack/Trie/TrieTestingView.swift +++ b/StickerSlack/Trie/TrieTestingView.swift @@ -20,7 +20,7 @@ struct TrieTestingView: View { @State var filterTerm: String = "" @State var filterResult: [String] = [] - @State var uikit: Bool = true + @State var uikit: Bool = false var body: some View { VStack {