提交 75494028 编写于 作者: D Daniel Imms

Merge remote-tracking branch 'origin/master' into tyriar/electron-1.7.3

......@@ -92,12 +92,14 @@
"null"
],
"default": null,
"description": "%typescript.tsdk.desc%"
"description": "%typescript.tsdk.desc%",
"scope": "window"
},
"typescript.disableAutomaticTypeAcquisition": {
"type": "boolean",
"default": false,
"description": "%typescript.disableAutomaticTypeAcquisition%"
"description": "%typescript.disableAutomaticTypeAcquisition%",
"scope": "window"
},
"typescript.npm": {
"type": [
......@@ -106,12 +108,14 @@
],
"default": null,
"description": "%typescript.npm%",
"isExecutable": true
"isExecutable": true,
"scope": "window"
},
"typescript.check.npmIsInstalled": {
"type": "boolean",
"default": true,
"description": "%typescript.check.npmIsInstalled%"
"description": "%typescript.check.npmIsInstalled%",
"scope": "window"
},
"javascript.referencesCodeLens.enabled": {
"type": "boolean",
......@@ -327,7 +331,8 @@
"javascript.implicitProjectConfig.checkJs": {
"type": "boolean",
"default": false,
"description": "%javascript.implicitProjectConfig.checkJs%"
"description": "%javascript.implicitProjectConfig.checkJs%",
"scope": "window"
},
"javascript.nameSuggestions": {
"type": "boolean",
......@@ -461,7 +466,9 @@
"taskDefinitions": [
{
"type": "typescript",
"required": ["tsconfig"],
"required": [
"tsconfig"
],
"properties": {
"tsconfig": {
"type": "string",
......@@ -515,4 +522,4 @@
}
]
}
}
\ No newline at end of file
}
......@@ -32,7 +32,12 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
commands.registerCommand(this.commandId, this.onCodeAction, this);
}
public async provideCodeActions(document: TextDocument, range: Range, context: CodeActionContext, token: CancellationToken): Promise<Command[]> {
public async provideCodeActions(
document: TextDocument,
range: Range,
context: CodeActionContext,
token: CancellationToken
): Promise<Command[]> {
if (!this.client.apiVersion.has213Features()) {
return [];
}
......@@ -70,7 +75,7 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
errorCodes: Array.from(supportedActions)
};
const response = await this.client.execute('getCodeFixes', args, token);
return (response.body || []).map(action => this.actionToEdit(source, action));
return (response.body || []).map(action => this.getCommandForAction(source, action));
}
private get supportedCodeActions(): Thenable<NumberSet> {
......@@ -94,7 +99,15 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
.filter(code => supportedActions[code])));
}
private actionToEdit(source: Source, action: Proto.CodeAction): Command {
private getCommandForAction(source: Source, action: Proto.CodeAction): Command {
return {
title: action.description,
command: this.commandId,
arguments: [source, action]
};
}
private async onCodeAction(source: Source, action: Proto.CodeAction): Promise<boolean> {
const workspaceEdit = new WorkspaceEdit();
for (const change of action.changes) {
for (const textChange of change.textChanges) {
......@@ -105,14 +118,7 @@ export default class TypeScriptCodeActionProvider implements CodeActionProvider
textChange.newText);
}
}
return {
title: action.description,
command: this.commandId,
arguments: [source, workspaceEdit]
};
}
private async onCodeAction(source: Source, workspaceEdit: WorkspaceEdit): Promise<boolean> {
const success = workspace.applyEdit(workspaceEdit);
if (!success) {
return false;
......
......@@ -180,6 +180,7 @@ class SaturationBox extends Disposable {
const whiteGradient = ctx.createLinearGradient(0, 0, this.canvas.width, 0);
whiteGradient.addColorStop(0, 'rgba(255, 255, 255, 1)');
whiteGradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.5)');
whiteGradient.addColorStop(1, 'rgba(255, 255, 255, 0)');
const blackGradient = ctx.createLinearGradient(0, 0, 0, this.canvas.height);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册