From f91b2cd779637f3cdc42d2d0995ca89cbd15789b Mon Sep 17 00:00:00 2001 From: matcool <26722564+matcool@users.noreply.github.com> Date: Mon, 12 Feb 2024 13:20:46 -0300 Subject: [PATCH] show yes/no choice instead for safe mode --- loader/src/load.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/loader/src/load.cpp b/loader/src/load.cpp index 9d509487..1ba9a99b 100644 --- a/loader/src/load.cpp +++ b/loader/src/load.cpp @@ -95,15 +95,16 @@ int geodeEntry(void* platformData) { #ifdef GEODE_IS_WINDOWS // yes this is quite funny if (GetAsyncKeyState(VK_SHIFT) != 0) { - LoaderImpl::get()->forceSafeMode(); - std::thread([] { - MessageBoxA( - NULL, - "You have triggered Geode Safe Mode by holding SHIFT.\nGeode will not load any mods.", - "Attention", - MB_OK | MB_ICONINFORMATION - ); - }).detach(); + auto choice = MessageBoxA( + NULL, + "(This has been triggered because you were holding SHIFT)\n" + "Do you want to activate Geode Safe Mode? This disables loading any mods.", + "Attention", + MB_YESNO | MB_ICONINFORMATION + ); + if (choice == IDYES) { + LoaderImpl::get()->forceSafeMode(); + } } #endif