@@ -28,7 +28,7 @@ import * as fs from 'fs';
28
28
import * as os from 'os' ;
29
29
import { SourceFileConfiguration , SourceFileConfigurationItem , Version , WorkspaceBrowseConfiguration } from 'vscode-cpptools' ;
30
30
import { IntelliSenseStatus , Status } from 'vscode-cpptools/out/testApi' ;
31
- import { CloseAction , DidOpenTextDocumentParams , ErrorAction , LanguageClientOptions , NotificationType , Position , Range , RequestType , ResponseError , TextDocumentIdentifier , TextDocumentPositionParams } from 'vscode-languageclient' ;
31
+ import { CloseAction , ErrorAction , LanguageClientOptions , NotificationType , Position , Range , RequestType , ResponseError , TextDocumentIdentifier , TextDocumentPositionParams } from 'vscode-languageclient' ;
32
32
import { LanguageClient , ServerOptions } from 'vscode-languageclient/node' ;
33
33
import * as nls from 'vscode-nls' ;
34
34
import { DebugConfigurationProvider } from '../Debugger/configurationProvider' ;
@@ -590,6 +590,18 @@ export interface CopilotCompletionContextParams {
590
590
doAggregateSnippets : boolean ;
591
591
}
592
592
593
+ export interface TextDocumentItemWithOriginalEncoding {
594
+ uri : string ;
595
+ languageId : string ;
596
+ version : number ;
597
+ text : string ;
598
+ originalEncoding : string ;
599
+ }
600
+
601
+ export interface DidOpenTextDocumentParamsWithOriginalEncoding {
602
+ textDocument : TextDocumentItemWithOriginalEncoding ;
603
+ }
604
+
593
605
// Requests
594
606
const PreInitializationRequest : RequestType < void , string , void > = new RequestType < void , string , void > ( 'cpptools/preinitialize' ) ;
595
607
const InitializationRequest : RequestType < CppInitializationParams , CppInitializationResult , void > = new RequestType < CppInitializationParams , CppInitializationResult , void > ( 'cpptools/initialize' ) ;
@@ -614,7 +626,7 @@ const CppContextRequest: RequestType<TextDocumentIdentifier, ChatContextResult,
614
626
const CopilotCompletionContextRequest : RequestType < CopilotCompletionContextParams , CopilotCompletionContextResult , void > = new RequestType < CopilotCompletionContextParams , CopilotCompletionContextResult , void > ( 'cpptools/getCompletionContext' ) ;
615
627
616
628
// Notifications to the server
617
- const DidOpenNotification : NotificationType < DidOpenTextDocumentParams > = new NotificationType < DidOpenTextDocumentParams > ( 'textDocument /didOpen' ) ;
629
+ const DidOpenNotification : NotificationType < DidOpenTextDocumentParamsWithOriginalEncoding > = new NotificationType < DidOpenTextDocumentParamsWithOriginalEncoding > ( 'cpptools /didOpen' ) ;
618
630
const FileCreatedNotification : NotificationType < FileChangedParams > = new NotificationType < FileChangedParams > ( 'cpptools/fileCreated' ) ;
619
631
const FileChangedNotification : NotificationType < FileChangedParams > = new NotificationType < FileChangedParams > ( 'cpptools/fileChanged' ) ;
620
632
const FileDeletedNotification : NotificationType < FileChangedParams > = new NotificationType < FileChangedParams > ( 'cpptools/fileDeleted' ) ;
@@ -2327,12 +2339,13 @@ export class DefaultClient implements Client {
2327
2339
2328
2340
// Only used in crash recovery. Otherwise, VS Code sends didOpen directly to native process (through the protocolFilter).
2329
2341
public async sendDidOpen ( document : vscode . TextDocument ) : Promise < void > {
2330
- const params : DidOpenTextDocumentParams = {
2342
+ const params : DidOpenTextDocumentParamsWithOriginalEncoding = {
2331
2343
textDocument : {
2332
2344
uri : document . uri . toString ( ) ,
2333
2345
languageId : document . languageId ,
2334
2346
version : document . version ,
2335
- text : document . getText ( )
2347
+ text : document . getText ( ) ,
2348
+ originalEncoding : document . encoding
2336
2349
}
2337
2350
} ;
2338
2351
await this . ready ;
0 commit comments