diff --git a/app/main.cpp b/app/main.cpp index ce590de9..edd153d5 100644 --- a/app/main.cpp +++ b/app/main.cpp @@ -670,9 +670,13 @@ int main(int argc, char *argv[]) return -1; } -#ifdef STEAM_LINK +#if defined(STEAM_LINK) || defined(Q_OS_WIN32) // Steam Link requires that we initialize video before creating our // QGuiApplication in order to configure the framebuffer correctly. + // + // We keep the video subsystem initialized on Windows because it's + // much more costly to reinitialize than other platforms. It hurts + // the settings page transition performance significantly. if (SDL_InitSubSystem(SDL_INIT_VIDEO) != 0) { SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "SDL_InitSubSystem(SDL_INIT_VIDEO) failed: %s",