diff --git a/package.json b/package.json index 38deb2c845..b3269b7dda 100644 --- a/package.json +++ b/package.json @@ -724,7 +724,7 @@ }, "csharp.semanticHighlighting.enabled": { "type": "boolean", - "default": false, + "default": true, "description": "Enable/disable Semantic Highlighting for C# files (Razor files currently unsupported). Defaults to false. Close open files for changes to take effect.", "scope": "window" }, @@ -3820,4 +3820,4 @@ } ] } -} +} \ No newline at end of file diff --git a/src/features/semanticTokensProvider.ts b/src/features/semanticTokensProvider.ts index 4f5270cec7..1e6a2c9760 100644 --- a/src/features/semanticTokensProvider.ts +++ b/src/features/semanticTokensProvider.ts @@ -187,7 +187,11 @@ export default class SemanticTokensProvider extends AbstractProvider implements return null; } - let req = createRequest(document, new vscode.Position(0, 0)); + const currentDocument = vscode.workspace.textDocuments.find(d => d.fileName === document.fileName); + const isCurrentVersion = currentDocument.version === document.version + + // We need to include the document contents in our request when we are highlighting a version of the document other than the current version, such as in the Diff view. + let req = createRequest(document, new vscode.Position(0, 0), /* includeBuffer: */ !isCurrentVersion); req.Range = range; const versionBeforeRequest = document.version;