From 1810a330cf1c14ff0bf588452b3f6016d644fa69 Mon Sep 17 00:00:00 2001 From: Janne Savolainen Date: Wed, 4 May 2022 14:15:56 +0300 Subject: [PATCH] Switch to using dependency over using explicit side-effect Co-authored-by: Mikko Aspiala Signed-off-by: Janne Savolainen --- .../setup-ipc-main-handlers.injectable.ts | 3 +++ .../setup-ipc-main-handlers/setup-ipc-main-handlers.ts | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.injectable.ts b/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.injectable.ts index b1d8924d08..176fae0caf 100644 --- a/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.injectable.ts +++ b/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.injectable.ts @@ -12,6 +12,7 @@ import getAbsolutePathInjectable from "../../../../common/path/get-absolute-path import catalogEntityRegistryInjectable from "../../../catalog/catalog-entity-registry.injectable"; import clusterStoreInjectable from "../../../../common/cluster-store/cluster-store.injectable"; import { whenApplicationIsLoadingInjectionToken } from "../../../start-main-application/runnable-tokens/when-application-is-loading-injection-token"; +import currentOperatingSystemThemeInjectable from "../../../theme/current-operating-system-theme.injectable"; const setupIpcMainHandlersInjectable = getInjectable({ id: "setup-ipc-main-handlers", @@ -28,6 +29,7 @@ const setupIpcMainHandlersInjectable = getInjectable({ const getAbsolutePath = di.inject(getAbsolutePathInjectable); const catalogEntityRegistry = di.inject(catalogEntityRegistryInjectable); const clusterStore = di.inject(clusterStoreInjectable); + const currentOperatingSystemTheme = di.inject(currentOperatingSystemThemeInjectable); return { run: () => { @@ -40,6 +42,7 @@ const setupIpcMainHandlersInjectable = getInjectable({ clusterManager, catalogEntityRegistry, clusterStore, + currentOperatingSystemTheme, }); }, }; diff --git a/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.ts b/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.ts index 0adadeebce..1e60978ab3 100644 --- a/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.ts +++ b/src/main/electron-app/runnables/setup-ipc-main-handlers/setup-ipc-main-handlers.ts @@ -23,7 +23,7 @@ import { handleWindowAction, onLocationChange } from "../../../ipc/window"; import { openFilePickingDialogChannel } from "../../../../common/ipc/dialog"; import { showOpenDialog } from "../../../ipc/dialog"; import { getNativeThemeChannel } from "../../../../common/ipc/native-theme"; -import { getNativeColorTheme } from "../../../native-theme"; +import type { Theme } from "../../../theme/current-operating-system-theme-state.injectable"; interface Dependencies { directoryForLensLocalStorage: string; @@ -32,9 +32,10 @@ interface Dependencies { clusterManager: ClusterManager; catalogEntityRegistry: CatalogEntityRegistry; clusterStore: ClusterStore; + currentOperatingSystemTheme: IComputedValue; } -export const setupIpcMainHandlers = ({ applicationMenuItems, directoryForLensLocalStorage, getAbsolutePath, clusterManager, catalogEntityRegistry, clusterStore }: Dependencies) => { +export const setupIpcMainHandlers = ({ applicationMenuItems, directoryForLensLocalStorage, getAbsolutePath, clusterManager, catalogEntityRegistry, clusterStore, currentOperatingSystemTheme }: Dependencies) => { ipcMainHandle(clusterActivateHandler, (event, clusterId: ClusterId, force = false) => { return ClusterStore.getInstance() .getById(clusterId) @@ -166,7 +167,7 @@ export const setupIpcMainHandlers = ({ applicationMenuItems, directoryForLensLoc }); ipcMainHandle(getNativeThemeChannel, () => { - return getNativeColorTheme(); + return currentOperatingSystemTheme.get(); }); clusterStore.provideInitialFromMain();