Use selectionRange for call hierarchy request input (#11264)

This commit is contained in:
Michelle Matias
2023-07-31 17:12:19 -07:00
committed by GitHub
parent 6b2099471d
commit b740f603ec
@@ -28,9 +28,9 @@ interface CallHierarchyItem {
detail: string;
/**
* The resource identifier of this item.
* The file path of this item.
*/
uri: string;
file: string;
/**
* The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.
@@ -175,7 +175,7 @@ export class CallHierarchyProvider implements vscode.CallHierarchyProvider {
let result: vscode.CallHierarchyIncomingCall[] | undefined;
const params: CallHierarchyParams = {
textDocument: { uri: item.uri.toString() },
position: Position.create(item.range.start.line, item.range.start.character)
position: Position.create(item.selectionRange.start.line, item.selectionRange.start.character)
};
const response: CallHierarchyCallsItemResult = await this.client.languageClient.sendRequest(CallHierarchyCallsToRequest, params, cancelSource.token);
@@ -213,7 +213,7 @@ export class CallHierarchyProvider implements vscode.CallHierarchyProvider {
let result: vscode.CallHierarchyOutgoingCall[] | undefined;
const params: CallHierarchyParams = {
textDocument: { uri: item.uri.toString() },
position: Position.create(item.range.start.line, item.range.start.character)
position: Position.create(item.selectionRange.start.line, item.selectionRange.start.character)
};
const response: CallHierarchyCallsItemResult = await this.client.languageClient.sendRequest(CallHierarchyCallsFromRequest, params, token);
@@ -230,10 +230,10 @@ export class CallHierarchyProvider implements vscode.CallHierarchyProvider {
private makeVscodeCallHierarchyItem(item: CallHierarchyItem): vscode.CallHierarchyItem {
const containerDetail: string = (item.detail !== "") ? `${item.detail} - ` : "";
const fileDetail: string = `${path.basename(item.uri)} (${path.dirname(item.uri)})`;
const fileDetail: string = `${path.basename(item.file)} (${path.dirname(item.file)})`;
return new vscode.CallHierarchyItem(
item.kind, item.name, containerDetail + fileDetail,
vscode.Uri.file(item.uri),
vscode.Uri.file(item.file),
makeVscodeRange(item.range),
makeVscodeRange(item.selectionRange));
}