@@ -188,13 +188,11 @@ struct WindowBaseCommandHandler: SuggestionCommandHandler {
188188 defer { presenter. markAsProcessing ( false ) }
189189
190190 let fileURL = try await Environment . fetchCurrentFileURL ( )
191- let ( _, filespace) = try await Workspace
192- . fetchOrCreateWorkspaceIfNeeded ( fileURL: fileURL)
193191 let language = UserDefaults . shared. value ( for: \. chatGPTLanguage)
194192 let codeLanguage = languageIdentifierFromFileURL ( fileURL)
195193 guard let selection = editor. selections. last else { return }
196194
197- let chat = createChatServiceIfNeeded ( filespace : filespace )
195+ let chat = WidgetDataSource . shared . createChatIfNeeded ( for : fileURL )
198196
199197 await chat. mutateSystemPrompt (
200198 """
@@ -234,8 +232,6 @@ struct WindowBaseCommandHandler: SuggestionCommandHandler {
234232 defer { presenter. markAsProcessing ( false ) }
235233
236234 let fileURL = try await Environment . fetchCurrentFileURL ( )
237- let ( _, filespace) = try await Workspace
238- . fetchOrCreateWorkspaceIfNeeded ( fileURL: fileURL)
239235 let language = UserDefaults . shared. value ( for: \. chatGPTLanguage)
240236 let codeLanguage = languageIdentifierFromFileURL ( fileURL)
241237
@@ -261,7 +257,7 @@ struct WindowBaseCommandHandler: SuggestionCommandHandler {
261257 """
262258 } ( )
263259
264- let chat = createChatServiceIfNeeded ( filespace : filespace )
260+ let chat = WidgetDataSource . shared . createChatIfNeeded ( for : fileURL )
265261
266262 await chat. mutateSystemPrompt ( prompt)
267263
@@ -280,19 +276,3 @@ struct WindowBaseCommandHandler: SuggestionCommandHandler {
280276 presenter. presentChatGPTConversation ( fileURL: fileURL)
281277 }
282278}
283-
284- extension SuggestionCommandHandler {
285- @ServiceActor
286- func createChatServiceIfNeeded( filespace: Filespace ) -> ChatService {
287- let chat : ChatService
288- if UserDefaults . shared. value ( for: \. useGlobalChat) {
289- chat = WidgetDataSource . shared. globalChat
290- ?? ChatService ( chatGPTService: ChatGPTService ( ) )
291- WidgetDataSource . shared. globalChat = chat
292- } else {
293- chat = filespace. chatService ?? ChatService ( chatGPTService: ChatGPTService ( ) )
294- filespace. chatService = chat
295- }
296- return chat
297- }
298- }
0 commit comments