diff --git a/src/main/mainWindow.ts b/src/main/mainWindow.ts index 74955d4..578e3cb 100644 --- a/src/main/mainWindow.ts +++ b/src/main/mainWindow.ts @@ -486,16 +486,22 @@ export function loadUrl(uri: string | undefined) { export async function createWindows() { const startMinimized = process.argv.includes("--start-minimized"); - const splash = createSplashWindow(startMinimized); - // SteamOS letterboxes and scales it terribly, so just full screen it - if (isDeckGameMode) splash.setFullScreen(true); + + let splash: BrowserWindow | undefined; + if (Settings.store.enableSplashScreen !== false) { + splash = createSplashWindow(startMinimized); + + // SteamOS letterboxes and scales it terribly, so just full screen it + if (isDeckGameMode) splash.setFullScreen(true); + } + await ensureVencordFiles(); runVencordMain(); mainWin = createMainWindow(); mainWin.webContents.on("did-finish-load", () => { - splash.destroy(); + splash?.destroy(); if (!startMinimized) { mainWin!.show(); diff --git a/src/renderer/components/settings/Settings.tsx b/src/renderer/components/settings/Settings.tsx index 792f447..0c7817c 100644 --- a/src/renderer/components/settings/Settings.tsx +++ b/src/renderer/components/settings/Settings.tsx @@ -60,11 +60,18 @@ const SettingsOptions: Record> defaultValue: false, disabled: () => Settings.store.customTitleBar ?? isWindows }, + { + key: "enableSplashScreen", + title: "Enable Splash Screen", + description: "Shows a small splash screen while Vesktop is loading", + defaultValue: true + }, { key: "splashTheming", title: "Splash theming", description: "Adapt the splash window colors to your custom theme", - defaultValue: false + defaultValue: false, + disabled: () => Settings.store.enableSplashScreen === false }, WindowsTransparencyControls ], diff --git a/src/shared/settings.d.ts b/src/shared/settings.d.ts index a80ad07..659143e 100644 --- a/src/shared/settings.d.ts +++ b/src/shared/settings.d.ts @@ -22,6 +22,7 @@ export interface Settings { clickTrayToShowHide?: boolean; customTitleBar?: boolean; + enableSplashScreen?: boolean; splashTheming?: boolean; splashColor?: string; splashBackground?: string;