switch to official extend selection API
This commit is contained in:
@@ -1,34 +0,0 @@
|
||||
import * as vscode from 'vscode';
|
||||
|
||||
import { Range, TextDocumentIdentifier } from 'vscode-languageclient';
|
||||
import { Server } from '../server';
|
||||
|
||||
interface ExtendSelectionParams {
|
||||
textDocument: TextDocumentIdentifier;
|
||||
selections: Range[];
|
||||
}
|
||||
|
||||
interface ExtendSelectionResult {
|
||||
selections: Range[];
|
||||
}
|
||||
|
||||
export async function handle() {
|
||||
const editor = vscode.window.activeTextEditor;
|
||||
if (editor == null || editor.document.languageId !== 'rust') {
|
||||
return;
|
||||
}
|
||||
const request: ExtendSelectionParams = {
|
||||
selections: editor.selections.map(s =>
|
||||
Server.client.code2ProtocolConverter.asRange(s)
|
||||
),
|
||||
textDocument: { uri: editor.document.uri.toString() }
|
||||
};
|
||||
const response = await Server.client.sendRequest<ExtendSelectionResult>(
|
||||
'rust-analyzer/extendSelection',
|
||||
request
|
||||
);
|
||||
editor.selections = response.selections.map((range: Range) => {
|
||||
const r = Server.client.protocol2CodeConverter.asRange(range);
|
||||
return new vscode.Selection(r.start, r.end);
|
||||
});
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
import * as analyzerStatus from './analyzer_status';
|
||||
import * as applySourceChange from './apply_source_change';
|
||||
import * as extendSelection from './extend_selection';
|
||||
import * as joinLines from './join_lines';
|
||||
import * as matchingBrace from './matching_brace';
|
||||
import * as onEnter from './on_enter';
|
||||
@@ -11,7 +10,6 @@ import * as syntaxTree from './syntaxTree';
|
||||
export {
|
||||
analyzerStatus,
|
||||
applySourceChange,
|
||||
extendSelection,
|
||||
joinLines,
|
||||
matchingBrace,
|
||||
parentModule,
|
||||
|
||||
Reference in New Issue
Block a user