From 5651b8554ff7072d4b949365a2d76e57d74ecfbd Mon Sep 17 00:00:00 2001 From: MathieuG-P <40181755+Zagrios@users.noreply.github.com> Date: Sun, 19 Jun 2022 21:59:18 +0200 Subject: [PATCH] add possibility to open a version installation folder --- src/main/ipcs/bs-version-ipcs.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/main/ipcs/bs-version-ipcs.ts b/src/main/ipcs/bs-version-ipcs.ts index 2e39aa94..63e1aaa4 100644 --- a/src/main/ipcs/bs-version-ipcs.ts +++ b/src/main/ipcs/bs-version-ipcs.ts @@ -2,6 +2,11 @@ import { ipcMain } from 'electron'; import { UtilsService } from '../services/utils.service'; import { BSInstallerService } from '../services/bs-installer.service'; import { BSVersionManagerService } from '../services/bs-version-manager.service' +import { BSVersion } from "main/services/bs-version-manager.service"; +import path from 'path'; +import { exec } from 'child_process'; +import { SteamService } from '../services/steam.service'; +import { BS_APP_ID } from '../constants'; ipcMain.on('bs-version.request-versions', async (event, args) => { UtilsService.getInstance().ipcSend('bs-version.request-versions', await BSVersionManagerService.getInstance().getAvailableVersions()); @@ -10,3 +15,19 @@ ipcMain.on('bs-version.request-versions', async (event, args) => { ipcMain.on('bs-version.installed-versions', async (event, args) => { UtilsService.getInstance().ipcSend('bs-version.installed-versions', await BSInstallerService.getInstance().getInstalledBsVersion()) }); + +ipcMain.on("bs-version.open-folder", async (event, args: BSVersion) => { + const bsInstallerService = BSInstallerService.getInstance(); + let versionFolder = "" + if(args.steam){ + const steamService = SteamService.getInstance(); + versionFolder = await steamService.getGameFolder(BS_APP_ID, "Beat Saber"); + console.log(versionFolder) + } + else{ + versionFolder = path.join(bsInstallerService.getBSInstallationFolder(), args.BSVersion); + } + if(UtilsService.getInstance().folderExist(versionFolder)){ + exec(`start "" "${versionFolder}"`); + } +})