Fix #3778 intellisense is delayed (#4134)

- Jupyter completion item support was awaiting info before responding. Fix is to check if this is even a notebook cell first, then only await stuff if that's true
This commit is contained in:
Kevin Cunnane
2019-02-22 16:22:40 -08:00
committed by GitHub
parent da3fbd386d
commit 5a88598811
3 changed files with 36 additions and 39 deletions

View File

@@ -99,7 +99,6 @@ export class JupyterController implements vscode.Disposable {
this.apiWrapper.registerCommand(constants.jupyterConfigurePython, () => { return this.doConfigurePython(jupyterInstaller); });
let supportedFileFilter: vscode.DocumentFilter[] = [
{ scheme: 'file', language: '*' },
{ scheme: 'untitled', language: '*' }
];
this.extensionContext.subscriptions.push(this.apiWrapper.registerCompletionItemProvider(supportedFileFilter, new NotebookCompletionItemProvider(notebookProvider)));

View File

@@ -27,10 +27,10 @@ export class JupyterNotebookProvider implements nb.NotebookProvider {
if (!notebookUri) {
return Promise.reject(localize('errNotebookUriMissing', 'A notebook path is required'));
}
return this.doGetNotebookManager(notebookUri);
return Promise.resolve(this.doGetNotebookManager(notebookUri));
}
private doGetNotebookManager(notebookUri: vscode.Uri): Promise<nb.NotebookManager> {
private doGetNotebookManager(notebookUri: vscode.Uri): nb.NotebookManager {
let uriString = notebookUri.toString();
let manager = this.managerTracker.get(uriString);
if (!manager) {
@@ -38,7 +38,7 @@ export class JupyterNotebookProvider implements nb.NotebookProvider {
manager = new JupyterNotebookManager(serverManager);
this.managerTracker.set(uriString, manager);
}
return Promise.resolve(manager);
return manager;
}
handleNotebookClosed(notebookUri: vscode.Uri): void {