From a5bb112df5a3f6de44ee4889dae7bcbac5284815 Mon Sep 17 00:00:00 2001 From: Mo Date: Thu, 24 Aug 2023 08:48:56 -0500 Subject: [PATCH] chore: fix issue where application deinit was called twice --- .../web/src/javascripts/Application/Dependencies/Types.ts | 2 -- .../javascripts/Application/Dependencies/WebDependencies.ts | 4 +--- packages/web/src/javascripts/Application/WebApplication.ts | 4 ++-- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/packages/web/src/javascripts/Application/Dependencies/Types.ts b/packages/web/src/javascripts/Application/Dependencies/Types.ts index 746359561..ec9c8b730 100644 --- a/packages/web/src/javascripts/Application/Dependencies/Types.ts +++ b/packages/web/src/javascripts/Application/Dependencies/Types.ts @@ -1,6 +1,4 @@ export const Web_TYPES = { - Application: Symbol.for('Application'), - // Services AndroidBackHandler: Symbol.for('AndroidBackHandler'), ArchiveManager: Symbol.for('ArchiveManager'), diff --git a/packages/web/src/javascripts/Application/Dependencies/WebDependencies.ts b/packages/web/src/javascripts/Application/Dependencies/WebDependencies.ts index 15d19a767..e3e339fa2 100644 --- a/packages/web/src/javascripts/Application/Dependencies/WebDependencies.ts +++ b/packages/web/src/javascripts/Application/Dependencies/WebDependencies.ts @@ -100,8 +100,6 @@ export class WebDependencies extends DependencyContainer { return new AndroidBackHandler() }) - this.bind(Web_TYPES.Application, () => this.application) - this.bind(Web_TYPES.ItemGroupController, () => { return new ItemGroupController( application.items, @@ -124,7 +122,7 @@ export class WebDependencies extends DependencyContainer { }) this.bind(Web_TYPES.ArchiveManager, () => { - return new ArchiveManager(this.get(Web_TYPES.Application)) + return new ArchiveManager(application) }) this.bind(Web_TYPES.ThemeManager, () => { diff --git a/packages/web/src/javascripts/Application/WebApplication.ts b/packages/web/src/javascripts/Application/WebApplication.ts index b98773544..1d50d3108 100644 --- a/packages/web/src/javascripts/Application/WebApplication.ts +++ b/packages/web/src/javascripts/Application/WebApplication.ts @@ -177,12 +177,12 @@ export class WebApplication extends SNApplication implements WebApplicationInter } override deinit(mode: DeinitMode, source: DeinitSource): void { - super.deinit(mode, source) - if (!this.isNativeMobileWeb()) { this.webOrDesktopDevice.removeApplication(this) } + super.deinit(mode, source) + for (const disposer of this.disposers) { disposer() }