diff --git a/src/main/index.ts b/src/main/index.ts index e91cb3449..541f8f0e9 100644 --- a/src/main/index.ts +++ b/src/main/index.ts @@ -765,6 +765,29 @@ async function createWindow(first = true): Promise { log.error('Renderer process unresponsive'); }); + // Mouse navigation + mainWindow.on('app-command', (_event, command) => { + if ( + command === 'browser-backward' && + mainWindow?.webContents.navigationHistory.canGoBack() + ) { + mainWindow.webContents.navigationHistory.goBack(); + } else if ( + command === 'browser-forward' && + mainWindow?.webContents.navigationHistory.canGoForward() + ) { + mainWindow.webContents.navigationHistory.goForward(); + } + }); + + mainWindow.on('swipe', (_event, direction) => { + if (direction === 'right' && mainWindow?.webContents.navigationHistory.canGoForward()) { + mainWindow.webContents.navigationHistory.goForward(); + } else if (direction === 'left' && mainWindow?.webContents.navigationHistory.canGoBack()) { + mainWindow.webContents.navigationHistory.goBack(); + } + }); + mainWindow.on('closed', () => { log.info('Main window closed'); ipcMain.removeHandler('window-clear-cache');