diff --git a/web/apps/photos/src/pages/_app.tsx b/web/apps/photos/src/pages/_app.tsx index 4ece03604..3dc650301 100644 --- a/web/apps/photos/src/pages/_app.tsx +++ b/web/apps/photos/src/pages/_app.tsx @@ -190,14 +190,6 @@ export default function App({ Component, pageProps }: AppProps) { } }; loadMlSearchState(); - try { - eventBus.on(Events.LOGOUT, () => { - setMlSearchEnabled(false); - mlWorkManager.setMlSearchEnabled(false); - }); - } catch (e) { - log.error("Error while subscribing to logout event", e); - } }, []); useEffect(() => { @@ -339,6 +331,7 @@ export default function App({ Component, pageProps }: AppProps) { }); const logout = () => { + setMlSearchEnabled(false); void photosLogout().then(() => router.push(PAGES.ROOT)); }; diff --git a/web/apps/photos/src/services/clip-service.ts b/web/apps/photos/src/services/clip-service.ts index 98b1ea60b..eb5d7ada5 100644 --- a/web/apps/photos/src/services/clip-service.ts +++ b/web/apps/photos/src/services/clip-service.ts @@ -80,7 +80,6 @@ class CLIPService { this.liveEmbeddingExtractionQueue = new PQueue({ concurrency: 1, }); - eventBus.on(Events.LOGOUT, this.logout, this); } isPlatformSupported = () => { @@ -96,7 +95,6 @@ class CLIPService { } } - setupOnFileUploadListener = async () => { try { if (this.onFileUploadedHandler) { diff --git a/web/apps/photos/src/services/logout.ts b/web/apps/photos/src/services/logout.ts index ae31b9279..0cd82fdd7 100644 --- a/web/apps/photos/src/services/logout.ts +++ b/web/apps/photos/src/services/logout.ts @@ -2,6 +2,7 @@ import log from "@/next/log"; import { accountLogout } from "@ente/accounts/services/logout"; import { Events, eventBus } from "@ente/shared/events"; import { clipService } from "services/clip-service"; +import mlWorkManager from "./machineLearning/mlWorkManager"; /** * Logout sequence for the photos app. @@ -19,6 +20,12 @@ export const photosLogout = async () => { log.error("Ignoring error in CLIP logout", e); } + try { + await mlWorkManager.setMlSearchEnabled(false); + } catch (e) { + log.error("Ignoring error in ML logout", e); + } + const electron = globalThis.electron; if (electron) { try {