in src/issues/issueFeatureRegistrar.ts [68:390]
async initialize() {
this.context.subscriptions.push(
vscode.workspace.registerFileSystemProvider(NEW_ISSUE_SCHEME, new IssueFileSystemProvider()),
);
this.registerCompletionProviders();
this.context.subscriptions.push(
vscode.languages.registerCompletionItemProvider(
{ scheme: NEW_ISSUE_SCHEME },
new LabelCompletionProvider(this.manager),
' ',
',',
),
);
this.context.subscriptions.push(
vscode.window.createTreeView('issues:github', {
showCollapseAll: true,
treeDataProvider: new IssuesTreeData(this._stateManager, this.manager, this.context),
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.createIssueFromSelection',
(newIssue?: NewIssue, issueBody?: string) => {
/* __GDPR__
"issue.createIssueFromSelection" : {}
*/
this.telemetry.sendTelemetryEvent('issue.createIssueFromSelection');
return this.createTodoIssue(newIssue, issueBody);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.createIssueFromClipboard',
() => {
/* __GDPR__
"issue.createIssueFromClipboard" : {}
*/
this.telemetry.sendTelemetryEvent('issue.createIssueFromClipboard');
return this.createTodoIssueClipboard();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.copyGithubPermalink',
(fileUri: any) => {
/* __GDPR__
"issue.copyGithubPermalink" : {}
*/
this.telemetry.sendTelemetryEvent('issue.copyGithubPermalink');
return this.copyPermalink(fileUri instanceof vscode.Uri ? fileUri : undefined);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.copyMarkdownGithubPermalink',
() => {
/* __GDPR__
"issue.copyMarkdownGithubPermalink" : {}
*/
this.telemetry.sendTelemetryEvent('issue.copyMarkdownGithubPermalink');
return this.copyMarkdownPermalink();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.openGithubPermalink',
() => {
/* __GDPR__
"issue.openGithubPermalink" : {}
*/
this.telemetry.sendTelemetryEvent('issue.openGithubPermalink');
return this.openPermalink();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.openIssue', (issueModel: any) => {
/* __GDPR__
"issue.openIssue" : {}
*/
this.telemetry.sendTelemetryEvent('issue.openIssue');
return this.openIssue(issueModel);
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.startWorking',
(issue: any) => {
/* __GDPR__
"issue.startWorking" : {}
*/
this.telemetry.sendTelemetryEvent('issue.startWorking');
return this.startWorking(issue);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.startWorkingBranchDescriptiveTitle',
(issue: any) => {
/* __GDPR__
"issue.startWorking" : {}
*/
this.telemetry.sendTelemetryEvent('issue.startWorking');
return this.startWorking(issue);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.continueWorking',
(issue: any) => {
/* __GDPR__
"issue.continueWorking" : {}
*/
this.telemetry.sendTelemetryEvent('issue.continueWorking');
return this.startWorking(issue);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.startWorkingBranchPrompt',
(issueModel: any) => {
/* __GDPR__
"issue.startWorkingBranchPrompt" : {}
*/
this.telemetry.sendTelemetryEvent('issue.startWorkingBranchPrompt');
return this.startWorkingBranchPrompt(issueModel);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.stopWorking',
(issueModel: any) => {
/* __GDPR__
"issue.stopWorking" : {}
*/
this.telemetry.sendTelemetryEvent('issue.stopWorking');
return this.stopWorking(issueModel);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.stopWorkingBranchDescriptiveTitle',
(issueModel: any) => {
/* __GDPR__
"issue.stopWorking" : {}
*/
this.telemetry.sendTelemetryEvent('issue.stopWorking');
return this.stopWorking(issueModel);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.statusBar',
() => {
/* __GDPR__
"issue.statusBar" : {}
*/
this.telemetry.sendTelemetryEvent('issue.statusBar');
return this.statusBar();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.copyIssueNumber', (issueModel: any) => {
/* __GDPR__
"issue.copyIssueNumber" : {}
*/
this.telemetry.sendTelemetryEvent('issue.copyIssueNumber');
return this.copyIssueNumber(issueModel);
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.copyIssueUrl', (issueModel: any) => {
/* __GDPR__
"issue.copyIssueUrl" : {}
*/
this.telemetry.sendTelemetryEvent('issue.copyIssueUrl');
return this.copyIssueUrl(issueModel);
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.refresh',
() => {
/* __GDPR__
"issue.refresh" : {}
*/
this.telemetry.sendTelemetryEvent('issue.refresh');
return this.refreshView();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.suggestRefresh',
() => {
/* __GDPR__
"issue.suggestRefresh" : {}
*/
this.telemetry.sendTelemetryEvent('issue.suggestRefresh');
return this.suggestRefresh();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.getCurrent',
() => {
/* __GDPR__
"issue.getCurrent" : {}
*/
this.telemetry.sendTelemetryEvent('issue.getCurrent');
return this.getCurrent();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.editQuery',
(query: IssueUriTreeItem) => {
/* __GDPR__
"issue.editQuery" : {}
*/
this.telemetry.sendTelemetryEvent('issue.editQuery');
return this.editQuery(query);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.createIssue',
() => {
/* __GDPR__
"issue.createIssue" : {}
*/
this.telemetry.sendTelemetryEvent('issue.createIssue');
return this.createIssue();
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand(
'issue.createIssueFromFile',
async () => {
/* __GDPR__
"issue.createIssueFromFile" : {}
*/
this.telemetry.sendTelemetryEvent('issue.createIssueFromFile');
await vscode.commands.executeCommand('setContext', CREATING_ISSUE_FROM_FILE_CONTEXT, true);
await this.createIssueFromFile();
await vscode.commands.executeCommand('setContext', CREATING_ISSUE_FROM_FILE_CONTEXT, false);
},
this,
),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.issueCompletion', () => {
/* __GDPR__
"issue.issueCompletion" : {}
*/
this.telemetry.sendTelemetryEvent('issue.issueCompletion');
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.userCompletion', () => {
/* __GDPR__
"issue.userCompletion" : {}
*/
this.telemetry.sendTelemetryEvent('issue.userCompletion');
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.signinAndRefreshList', async () => {
return this.manager.authenticate();
}),
);
this.context.subscriptions.push(
vscode.commands.registerCommand('issue.goToLinkedCode', async (issueModel: any) => {
return openCodeLink(issueModel, this.manager);
}),
);
this._stateManager.tryInitializeAndWait().then(() => {
this.context.subscriptions.push(
vscode.languages.registerHoverProvider(
'*',
new IssueHoverProvider(this.manager, this._stateManager, this.context, this.telemetry),
),
);
this.context.subscriptions.push(
vscode.languages.registerHoverProvider('*', new UserHoverProvider(this.manager, this.telemetry)),
);
this.context.subscriptions.push(
vscode.languages.registerCodeActionsProvider('*', new IssueTodoProvider(this.context), { providedCodeActionKinds: [vscode.CodeActionKind.QuickFix] }),
);
});
}