Skip to content

Commit 105f08f

Browse files
Select symbol of other references results (#4336)
1 parent c267efb commit 105f08f

File tree

4 files changed

+11
-9
lines changed

4 files changed

+11
-9
lines changed

Extension/src/LanguageServer/references.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ export class ReferencesManager {
373373
}
374374
} else {
375375
// Put results in data model
376-
this.findAllRefsView.setData(referencesResult.referenceInfos, this.referencesCanceled);
376+
this.findAllRefsView.setData(referencesResult, this.referencesCanceled);
377377

378378
// Display data based on command mode: peek references OR find all references
379379
if (this.client.ReferencesCommandMode === ReferencesCommandMode.Peek) {

Extension/src/LanguageServer/referencesModel.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,17 @@
44
* ------------------------------------------------------------------------------------------ */
55
'use strict';
66
import * as vscode from 'vscode';
7-
import { ReferenceType, ReferenceInfo } from './references';
7+
import { ReferenceType, ReferenceInfo, ReferencesResult } from './references';
88

99
export class Model {
1010
readonly FileItems: FileItem[] = [];
1111
readonly ReferenceItems: ReferenceItem[] = [];
1212
readonly ReferenceTypeItems: ReferenceTypeItem[] = [];
13+
private originalSymbol: string = "";
1314

14-
constructor(resultsInput: ReferenceInfo[]) {
15-
let results: ReferenceInfo[] = resultsInput.filter(r => r.type !== ReferenceType.Confirmed);
15+
constructor(resultsInput: ReferencesResult) {
16+
this.originalSymbol = resultsInput.text;
17+
let results: ReferenceInfo[] = resultsInput.referenceInfos.filter(r => r.type !== ReferenceType.Confirmed);
1618
for (let r of results) {
1719
// Add file if it doesn't exist
1820
let fileItem: FileItem;
@@ -46,7 +48,7 @@ export class Model {
4648
fileItem.ReferenceItemsPending = noReferenceLocation;
4749
fileItemByRef.ReferenceItemsPending = noReferenceLocation;
4850
if (!noReferenceLocation) {
49-
const range: vscode.Range = new vscode.Range(r.position.line, r.position.character, r.position.line, r.position.character + 1);
51+
const range: vscode.Range = new vscode.Range(r.position.line, r.position.character, r.position.line, r.position.character + this.originalSymbol.length);
5052
const location: vscode.Location = new vscode.Location(fileItem.uri, range);
5153
const reference: ReferenceItem = new ReferenceItem(r.position, location, r.text, fileItem, r.type);
5254

Extension/src/LanguageServer/referencesProvider.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import * as vscode from 'vscode';
77
import * as util from '../common';
88
import { Model, FileItem, ReferenceItem, ReferenceTypeItem } from './referencesModel';
9-
import { ReferenceInfo, ReferenceType, getReferenceTagString } from './references';
9+
import { ReferencesResult, ReferenceType, getReferenceTagString } from './references';
1010
import * as nls from 'vscode-nls';
1111

1212
nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })();
@@ -66,7 +66,7 @@ export class ReferenceDataProvider implements vscode.TreeDataProvider<TreeObject
6666
this._onDidChangeTreeData.fire();
6767
}
6868

69-
setModel(results: ReferenceInfo[], isCanceled: boolean): void {
69+
setModel(results: ReferencesResult, isCanceled: boolean): void {
7070
this.referencesCanceled = isCanceled;
7171
this.references = new Model(results);
7272
this._onDidChangeTreeData.fire();

Extension/src/LanguageServer/referencesView.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* ------------------------------------------------------------------------------------------ */
55
'use strict';
66
import * as vscode from 'vscode';
7-
import { ReferenceInfo, ReferenceType, getReferenceTagString } from './references';
7+
import { ReferencesResult, ReferenceType, getReferenceTagString } from './references';
88
import { ReferenceDataProvider } from './referencesProvider';
99
import { FileItem, ReferenceItem } from './referencesModel';
1010

@@ -29,7 +29,7 @@ export class FindAllRefsView {
2929
this.referenceViewProvider.toggleGroupView();
3030
}
3131

32-
setData(results: ReferenceInfo[], isCanceled: boolean): void {
32+
setData(results: ReferencesResult, isCanceled: boolean): void {
3333
this.referenceViewProvider.setModel(results, isCanceled);
3434
}
3535

0 commit comments

Comments
 (0)