diff --git a/main/index.js b/main/index.js --- a/main/index.js +++ b/main/index.js @@ -46,7 +46,12 @@ Logger_js_1.Logger.setupLogger(); (0, handleBackgroundTasks_js_1.handleBackgroundTasks)(window); (0, handleCrash_js_1.handleCrash)(); await (0, loadURL_js_1.loadURL)(window); - if ([platform_js_1.Platform.WINDOWS, platform_js_1.Platform.LINUX].includes(deviceInfo_js_1.devicePlatform)) { + const customTitleBar = process.env.CUSTOM_TITLE_BAR && process.env.CUSTOM_TITLE_BAR > 0; + const platforms = [platform_js_1.Platform.WINDOWS]; + if (customTitleBar) { + platforms.push(platform_js_1.Platform.LINUX); + } + if (platforms.includes(deviceInfo_js_1.devicePlatform)) { (0, customTitleBar_js_1.createCustomTitleBar)(window); } if (config_js_1.config.enableAutoUpdate) { diff --git a/main/lib/createWindow.js b/main/lib/createWindow.js --- a/main/lib/createWindow.js +++ b/main/lib/createWindow.js @@ -38,13 +38,13 @@ const toggleWindowState = (window) => { (0, tray_js_1.updateTrayMenu)(window); }; exports.toggleWindowState = toggleWindowState; +const customTitleBar = process.env.CUSTOM_TITLE_BAR && process.env.CUSTOM_TITLE_BAR > 0; const createWindow = async () => { - const withFrame = [platform_js_1.Platform.WINDOWS, platform_js_1.Platform.MACOS].includes(deviceInfo_js_1.devicePlatform); + const withFrame = !customTitleBar; const window = new electron_1.BrowserWindow({ show: false, center: true, frame: withFrame, - titleBarStyle: 'hidden', trafficLightPosition: { x: 16, y: 10 diff --git a/main/lib/preload.js b/main/lib/preload.js --- a/main/lib/preload.js +++ b/main/lib/preload.js @@ -7,10 +7,12 @@ const deviceInfo_js_1 = require("./deviceInfo.js"); const theme_js_1 = require("../types/theme.js"); const hostnamePatterns_js_1 = require("../constants/hostnamePatterns.js"); const deviceInfo = (0, deviceInfo_js_1.getDeviceInfo)(); +const customTitleBar = process.env.CUSTOM_TITLE_BAR && process.env.CUSTOM_TITLE_BAR > 0; electron_1.contextBridge.exposeInMainWorld('VERSION', String(config_js_1.config.buildInfo.VERSION)); electron_1.contextBridge.exposeInMainWorld('BRANCH', String(config_js_1.config.buildInfo.BRANCH)); electron_1.contextBridge.exposeInMainWorld('PLATFORM', deviceInfo.os); electron_1.contextBridge.exposeInMainWorld('DEVICE_INFO', deviceInfo); +electron_1.contextBridge.exposeInMainWorld('CUSTOM_TITLE_BAR', customTitleBar); electron_1.contextBridge.exposeInMainWorld('desktopEvents', { send(name, ...args) { electron_1.ipcRenderer.send(name, ...args);