From c8e3dc8a6e7442a7721b3c20448a99f7029f947f Mon Sep 17 00:00:00 2001 From: Natsumi Date: Sun, 1 Mar 2026 19:59:05 +1100 Subject: [PATCH] Electron save zoom level --- src-electron/main.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src-electron/main.js b/src-electron/main.js index d90f4eb8..d3e323dd 100644 --- a/src-electron/main.js +++ b/src-electron/main.js @@ -302,6 +302,7 @@ function createWindow() { const y = parseInt(VRCXStorage.Get('VRCX_LocationY')) || 0; const width = parseInt(VRCXStorage.Get('VRCX_SizeWidth')) || 1920; const height = parseInt(VRCXStorage.Get('VRCX_SizeHeight')) || 1080; + const zoomLevel = parseFloat(VRCXStorage.Get('VRCX_ZoomLevel')) || 0; mainWindow = new BrowserWindow({ x, y, @@ -339,21 +340,31 @@ function createWindow() { // Open the DevTools. // mainWindow.webContents.openDevTools() + mainWindow.webContents.on('did-finish-load', () => { + mainWindow.webContents.setZoomLevel(zoomLevel); + }); + mainWindow.webContents.on('before-input-event', (event, input) => { if (input.control && input.key === '=') { mainWindow.webContents.setZoomLevel( mainWindow.webContents.getZoomLevel() + 1 ); } + if (input.control && input.key === '-') { + mainWindow.webContents.setZoomLevel( + mainWindow.webContents.getZoomLevel() - 1 + ); + } }); mainWindow.webContents.on('zoom-changed', (event, zoomDirection) => { - const currentZoom = mainWindow.webContents.getZoomLevel(); + let currentZoom = mainWindow.webContents.getZoomLevel(); if (zoomDirection === 'in') { - mainWindow.webContents.setZoomLevel(currentZoom + 1); + mainWindow.webContents.setZoomLevel(++currentZoom); } else { - mainWindow.webContents.setZoomLevel(currentZoom - 1); + mainWindow.webContents.setZoomLevel(--currentZoom); } + VRCXStorage.Set('VRCX_ZoomLevel', currentZoom.toString()); }); mainWindow.webContents.setVisualZoomLevelLimits(1, 5);