diff --git a/ts/util/setupI18n.ts b/ts/util/setupI18n.ts index 7bebcc582a..0e8d076faa 100644 --- a/ts/util/setupI18n.ts +++ b/ts/util/setupI18n.ts @@ -17,8 +17,7 @@ export function setupI18n( const getMessage: LocalizerType = (key, substitutions) => { // eslint-disable-next-line no-console - const log = - typeof window !== 'undefined' ? window.SignalWindow.log : console; + const log = window?.SignalWindow?.log || console; const entry = messages[key]; if (!entry) { diff --git a/ts/windows/configure.ts b/ts/windows/configure.ts index 7835e02aa7..740c1e4b30 100644 --- a/ts/windows/configure.ts +++ b/ts/windows/configure.ts @@ -12,6 +12,7 @@ import { } from '../environment'; import { strictAssert } from '../util/assert'; import { createSetting } from '../util/preload'; +import { initialize as initializeLogging } from '../logging/set_up_renderer_logging'; const config = url.parse(window.location.toString(), true).query; const { locale } = config; @@ -23,6 +24,8 @@ setEnvironment(parseEnvironment(config.environment)); strictAssert(Boolean(window.SignalContext), 'context must be defined'); +initializeLogging(); + export const SignalWindow = { Settings: { themeSetting: createSetting('themeSetting', { setter: false }), @@ -34,4 +37,5 @@ export const SignalWindow = { getEnvironment, getVersion: (): string => String(config.version), i18n: setupI18n(locale, localeMessages), + log: window.SignalWindow.log, }; diff --git a/ts/windows/permissions/preload.ts b/ts/windows/permissions/preload.ts index c1c658e6be..236b67d0a8 100644 --- a/ts/windows/permissions/preload.ts +++ b/ts/windows/permissions/preload.ts @@ -11,7 +11,6 @@ import '../context'; import { createSetting } from '../../util/preload'; import { SignalWindow } from '../configure'; import { PermissionsPopup } from '../../components/PermissionsPopup'; -import { initialize as initializeLogging } from '../../logging/set_up_renderer_logging'; const mediaCameraPermissions = createSetting('mediaCameraPermissions', { getter: false, @@ -64,5 +63,3 @@ contextBridge.exposeInMainWorld('SignalWindow', { ); }, }); - -initializeLogging(); diff --git a/ts/windows/settings/preload.ts b/ts/windows/settings/preload.ts index 998c5b1fc8..0a7fede483 100644 --- a/ts/windows/settings/preload.ts +++ b/ts/windows/settings/preload.ts @@ -4,7 +4,6 @@ import React from 'react'; import ReactDOM from 'react-dom'; import { contextBridge, ipcRenderer } from 'electron'; -import { initialize as initializeLogging } from '../../logging/set_up_renderer_logging'; // It is important to call this as early as possible import '../context'; @@ -367,5 +366,3 @@ contextBridge.exposeInMainWorld('SignalWindow', { ...SignalWindow, renderWindow: renderPreferences, }); - -initializeLogging();