@@ -11,13 +11,14 @@ public final class GitHubCopilotExtension: BuiltinExtension {
1111 public var suggestionService : SuggestionServiceType ? { _suggestionService }
1212 public var chatService : ChatServiceType ? { nil }
1313 public var promptToCodeService : PromptToCodeServiceType ? { nil }
14- private var appConfiguration = AppConfiguration (
15- suggestionServiceInUse : false ,
16- chatServiceInUse : false
14+ private var extensionUsage = ExtensionUsage (
15+ isSuggestionServiceInUse : false ,
16+ isChatServiceInUse : false
1717 )
1818 private var isLanguageServerInUse : Bool {
19- appConfiguration . suggestionServiceInUse || appConfiguration . chatServiceInUse
19+ extensionUsage . isSuggestionServiceInUse || extensionUsage . isChatServiceInUse
2020 }
21+
2122 let workspacePool : WorkspacePool
2223
2324 let serviceLocator : ServiceLocator
@@ -80,7 +81,7 @@ public final class GitHubCopilotExtension: BuiltinExtension {
8081 public func workspace(
8182 _ workspace: WorkspaceInfo ,
8283 didUpdateDocumentAt documentURL: URL ,
83- content: String
84+ content: String ?
8485 ) {
8586 guard isLanguageServerInUse else { return }
8687 // check if file size is larger than 15MB, if so, return immediately
@@ -92,7 +93,7 @@ public final class GitHubCopilotExtension: BuiltinExtension {
9293
9394 Task {
9495 do {
95- let content = try String ( contentsOf : documentURL , encoding : . utf8 )
96+ guard let content else { return }
9697 guard let service = await serviceLocator. getService ( from: workspace) else { return }
9798 try await service. notifyOpenTextDocument ( fileURL: documentURL, content: content)
9899 } catch {
@@ -101,9 +102,9 @@ public final class GitHubCopilotExtension: BuiltinExtension {
101102 }
102103 }
103104
104- public func appConfigurationDidChange ( _ configuration : AppConfiguration ) {
105- appConfiguration = configuration
106- if !configuration . chatServiceInUse && !configuration . suggestionServiceInUse {
105+ public func extensionUsageDidChange ( _ usage : ExtensionUsage ) {
106+ extensionUsage = usage
107+ if !usage . isChatServiceInUse && !usage . isSuggestionServiceInUse {
107108 for workspace in workspacePool. workspaces. values {
108109 guard let plugin = workspace. plugin ( for: GitHubCopilotWorkspacePlugin . self)
109110 else { continue }
0 commit comments