@@ -86,8 +86,8 @@ struct ContentView: View {
8686
8787 @Environment ( \. sizeCategory) var sizeCategory
8888
89- @ObservedObject var observableSheet = ObservableActiveSheet ( )
90- @ObservedObject var urlToOpen = ObservableURL ( )
89+ @StateObject var observableSheet = ObservableActiveSheet ( )
90+ @StateObject var urlToOpen = ObservableURL ( )
9191
9292 var body : some View {
9393 let selection = Binding ( get: { self . _selection } ,
@@ -125,7 +125,8 @@ struct ContentView: View {
125125 Image ( systemName: " gear " )
126126 Text ( " Settings " )
127127 } ) . environmentObject ( settings) . environment ( \. managedObjectContext, viewContext)
128- } . environment ( \. didReselect, didReselect. eraseToAnyPublisher ( ) ) . accentColor ( settings. accentColor) . font ( Font ( . body, sizeModifier: CGFloat ( settings. textSizeModifier) ) ) . onOpenURL ( perform: { url in
128+ } . environment ( \. didReselect, didReselect. eraseToAnyPublisher ( ) )
129+ . onOpenURL ( perform: { url in
129130 let _ = print ( url)
130131 let openAction = {
131132 if url. host == " open " , let comps = URLComponents ( url: url, resolvingAgainstBaseURL: false ) , let items = comps. queryItems, let item = items. first, item. name == " url " , let itemValue = item. value, let lobsters_url = URL ( string: itemValue) , lobsters_url. host == " lobste.rs " {
@@ -160,20 +161,20 @@ struct ContentView: View {
160161 openAction ( )
161162 }
162163 } )
163- . sheet ( item: self . observableSheet. bindingSheet , content: { item in
164+ . sheet ( item: self . $ observableSheet. sheet , content: { item in
164165 switch item {
165166 case . story( let id) :
166167 EZPanel {
167- StoryView ( id)
168- }
168+ StoryView ( id) . id ( id )
169+ } . id ( id )
169170 . environmentObject ( urlToOpen)
170171 . environmentObject ( settings)
171172 . environmentObject ( self . observableSheet)
172173 . environment ( \. managedObjectContext, viewContext)
173174 case . user( let username) :
174175 EZPanel {
175- UserView ( username)
176- }
176+ UserView ( username) . id ( username )
177+ } . id ( username )
177178 . environmentObject ( urlToOpen)
178179 . environmentObject ( settings)
179180 . environmentObject ( self . observableSheet)
@@ -205,6 +206,8 @@ struct ContentView: View {
205206 . environment ( \. managedObjectContext, viewContext)
206207 . environmentObject ( self . observableSheet)
207208 . environmentObject ( urlToOpen)
209+ . accentColor ( settings. accentColor)
210+ . font ( Font ( . body, sizeModifier: CGFloat ( settings. textSizeModifier) ) )
208211 }
209212}
210213
0 commit comments