From 2f016295a615a74d3c3a4573642604d13c923a41 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Wed, 11 Mar 2020 23:11:57 +1000 Subject: [PATCH] Core: Render a blank UI frame before booting This is related to https://bugs.dolphin-emu.org/issues/10958 which uses Qt to clear out the window so the game list isn't displayed while the core is booting. Instead, we use the video backend to render a black screen, which means Qt doesn't have to flip between paint engines. --- Source/Core/Core/Core.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/Core/Core/Core.cpp b/Source/Core/Core/Core.cpp index 1a62b44d82..a6ec7d4814 100644 --- a/Source/Core/Core/Core.cpp +++ b/Source/Core/Core/Core.cpp @@ -470,6 +470,11 @@ static void EmuThread(std::unique_ptr boot, WindowSystemInfo wsi } Common::ScopeGuard video_guard{[] { g_video_backend->Shutdown(); }}; + // Render a single frame without anything on it to clear the screen. + // This avoids the game list being displayed while the core is finishing initializing. + g_renderer->BeginUIFrame(); + g_renderer->EndUIFrame(); + if (cpu_info.HTT) SConfig::GetInstance().bDSPThread = cpu_info.num_cores > 4; else