diff --git a/webapp/packages/plugin-object-viewer/src/ObjectViewerTabService.ts b/webapp/packages/plugin-object-viewer/src/ObjectViewerTabService.ts index d0c490f284..8e76113ae7 100644 --- a/webapp/packages/plugin-object-viewer/src/ObjectViewerTabService.ts +++ b/webapp/packages/plugin-object-viewer/src/ObjectViewerTabService.ts @@ -67,6 +67,7 @@ export class ObjectViewerTabService { onSelect: this.selectObjectTab.bind(this), onClose: this.closeObjectTab.bind(this), canClose: this.canCloseObjectTab.bind(this), + onUnload: this.unloadObjectTab.bind(this), extensions: [ projectProvider(this.getProject.bind(this)), @@ -104,6 +105,11 @@ export class ObjectViewerTabService { }); } + private async unloadObjectTab(tab: ITab) { + // TODO: we need to call unloadPages, but it's not implemented in the DBObjectPageService + await this.dbObjectPageService.closePages(tab); + } + isPageActive(tab: ITab, page: ObjectPage): boolean { return tab.handlerState.pageId === page.key; }