File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -13,7 +13,6 @@ final class SearchViewModel: Store {
1313 var isLoading : Bool = false
1414 var isSearching : Bool = false
1515 var searchQuery : String = " "
16- var selectedWebPage : WebPageItem ?
1716 var webPages : [ WebPageItem ] = [ ]
1817 var todos : [ TodoListItem ] = [ ]
1918 var recentQueries : OrderedSet < String > = [ ]
@@ -27,7 +26,6 @@ final class SearchViewModel: Store {
2726 enum Action {
2827 case fetchWebPage( [ WebPageItem ] )
2928 case fetchTodos( [ TodoListItem ] )
30- case selectWebPage( WebPageItem )
3129 case addRecentQuery( String )
3230 case removeRecentQuery( String )
3331 case clearRecentQueries
@@ -78,8 +76,6 @@ final class SearchViewModel: Store {
7876 state. webPages = items
7977 case . fetchTodos( let items) :
8078 state. todos = items
81- case . selectWebPage( let item) :
82- state. selectedWebPage = item
8379 case . addRecentQuery( let query) :
8480 let trimmed = query. trimmingCharacters ( in: . whitespacesAndNewlines)
8581 guard !trimmed. isEmpty else { break }
Original file line number Diff line number Diff line change @@ -25,11 +25,11 @@ struct SearchView: View {
2525 upsertUseCase: container. resolve ( UpsertTodoUseCase . self) ,
2626 todoID: todoID
2727 ) )
28- case . web( let url ) :
29- WebView ( url: url)
28+ case . web( let page ) :
29+ WebView ( url: page . url)
3030 . toolbar {
3131 ToolbarItem ( placement: . principal) {
32- Text ( viewModel . state . selectedWebPage ? . title ?? " " )
32+ Text ( page . title)
3333 . bold ( )
3434 }
3535 }
@@ -213,10 +213,7 @@ struct SearchView: View {
213213 }
214214
215215 private func webResultRow( _ item: WebPageItem ) -> some View {
216- Button {
217- viewModel. send ( . selectWebPage( item) )
218- router. push ( Path . web ( item. url) )
219- } label: {
216+ NavigationLink ( value: Path . web ( item) ) {
220217 VStack ( spacing: 4 ) {
221218 HStack {
222219 CacheableImage ( url: item. imageURL) {
@@ -290,6 +287,6 @@ struct SearchView: View {
290287
291288 private enum Path : Hashable {
292289 case todo( String )
293- case web( URL )
290+ case web( WebPageItem )
294291 }
295292}
You can’t perform that action at this time.
0 commit comments