From ae8fbd606d773ecb1efaca29cc2df90455f8306a Mon Sep 17 00:00:00 2001 From: Vladimir Voronkov Date: Fri, 17 Jan 2025 13:11:38 +0200 Subject: [PATCH] Fix approach for loading window minimization on mac --- src/window-creators/layouts/app-init.html | 2 +- .../general-ipc-channel-handlers.js | 15 +++++++++++++-- .../main-renderer-ipc-bridge/preload.js | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/window-creators/layouts/app-init.html b/src/window-creators/layouts/app-init.html index a35acecf..29ded962 100644 --- a/src/window-creators/layouts/app-init.html +++ b/src/window-creators/layouts/app-init.html @@ -255,7 +255,7 @@ minBtnElem.onclick = async () => { try { - await window.bfxReportElectronApi?.minimizeLoadingWin() + await window.bfxReportElectronApi?.hideLoadingWindow() } catch (err) { console.error(err) } diff --git a/src/window-creators/main-renderer-ipc-bridge/general-ipc-channel-handlers.js b/src/window-creators/main-renderer-ipc-bridge/general-ipc-channel-handlers.js index 9ee5b7e3..7fbb45a2 100644 --- a/src/window-creators/main-renderer-ipc-bridge/general-ipc-channel-handlers.js +++ b/src/window-creators/main-renderer-ipc-bridge/general-ipc-channel-handlers.js @@ -6,12 +6,23 @@ const wins = require('../windows') const IpcChannelHandlers = require('./ipc.channel.handlers') class GeneralIpcChannelHandlers extends IpcChannelHandlers { + #hideLoadingWindow = null + + constructor (...args) { + super(...args) + + // Resolve circular dependency issue + this.#hideLoadingWindow = require( + '../change-loading-win-visibility-state' + ).hideLoadingWindow + } + async exitHandler (event, args) { return app.exit(args?.code ?? 0) } - async minimizeLoadingWinHandler (event, args) { - return wins.loadingWindow?.minimize() + async hideLoadingWindowHandler (event, args) { + await this.#hideLoadingWindow() } async getTitleHandler (event, args) { diff --git a/src/window-creators/main-renderer-ipc-bridge/preload.js b/src/window-creators/main-renderer-ipc-bridge/preload.js index 533218b9..24a9ee1f 100644 --- a/src/window-creators/main-renderer-ipc-bridge/preload.js +++ b/src/window-creators/main-renderer-ipc-bridge/preload.js @@ -11,7 +11,7 @@ const CHANNEL_NAMES = { const GENERAL_INVOKE_METHOD_NAMES = { EXIT: 'exit', - MINIMIZE_LOADING_WIN: 'minimizeLoadingWin', + HIDE_LOADING_WINDOW: 'hideLoadingWindow', GET_TITLE: 'getTitle' } const GENERAL_EVENT_METHOD_NAMES = {