Skip to content

Commit e092295

Browse files
committed
onDidCloseNotebookDocument
1 parent c73c32c commit e092295

3 files changed

Lines changed: 8 additions & 0 deletions

File tree

src/vs/vscode.proposed.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1817,6 +1817,7 @@ declare module 'vscode' {
18171817
): Disposable;
18181818

18191819
export const onDidOpenNotebookDocument: Event<NotebookDocument>;
1820+
export const onDidCloseNotebookDocument: Event<NotebookDocument>;
18201821
// export const onDidChangeVisibleNotebookEditors: Event<NotebookEditor[]>;
18211822

18221823
// remove activeNotebookDocument, now that there is activeNotebookEditor.document

src/vs/workbench/api/common/extHost.api.impl.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -906,6 +906,10 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
906906
checkProposedApiEnabled(extension);
907907
return extHostNotebook.onDidOpenNotebookDocument;
908908
},
909+
get onDidCloseNotebookDocument(): Event<vscode.NotebookDocument> {
910+
checkProposedApiEnabled(extension);
911+
return extHostNotebook.onDidCloseNotebookDocument;
912+
},
909913
registerNotebookProvider: (viewType: string, provider: vscode.NotebookProvider) => {
910914
checkProposedApiEnabled(extension);
911915
return extHostNotebook.registerNotebookProvider(extension, viewType, provider);

src/vs/workbench/api/common/extHostNotebook.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -654,6 +654,8 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
654654

655655
private _onDidOpenNotebookDocument = new Emitter<vscode.NotebookDocument>();
656656
onDidOpenNotebookDocument: Event<vscode.NotebookDocument> = this._onDidOpenNotebookDocument.event;
657+
private _onDidCloseNotebookDocument = new Emitter<vscode.NotebookDocument>();
658+
onDidCloseNotebookDocument: Event<vscode.NotebookDocument> = this._onDidCloseNotebookDocument.event;
657659

658660
constructor(mainContext: IMainContext, commands: ExtHostCommands, private _documentsAndEditors: ExtHostDocumentsAndEditors) {
659661
this._proxy = mainContext.getProxy(MainContext.MainThreadNotebook);
@@ -898,6 +900,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
898900
if (document) {
899901
document.dispose();
900902
this._documents.delete(URI.revive(uri).toString());
903+
this._onDidCloseNotebookDocument.fire(document);
901904
}
902905

903906
let editor = this._editors.get(URI.revive(uri).toString());

0 commit comments

Comments
 (0)