From c8994c248481f3487b039dc48d97f7b9ec7f4735 Mon Sep 17 00:00:00 2001 From: Chloe Date: Fri, 16 Oct 2026 17:48:35 -0500 Subject: [PATCH] add restart with safe mode util --- app/src/main/java/com/geode/launcher/MainActivity.kt | 6 ++++-- app/src/main/java/com/geode/launcher/utils/GeodeUtils.kt | 6 ++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/geode/launcher/MainActivity.kt b/app/src/main/java/com/geode/launcher/MainActivity.kt index f0dfaa3..85b1284 100644 --- a/app/src/main/java/com/geode/launcher/MainActivity.kt +++ b/app/src/main/java/com/geode/launcher/MainActivity.kt @@ -104,8 +104,10 @@ class MainActivity : ComponentActivity() { val gdInstalled = GamePackageUtils.isGameInstalled(packageManager) val geodeInstalled = LaunchUtils.isGeodeInstalled(this) - if (gdInstalled && geodeInstalled && intent.getBooleanExtra("restarted", false)) { - onLaunch(this) + val restartImmediately = intent.getBooleanExtra("restarted", false) + if (gdInstalled && geodeInstalled && restartImmediately) { + val withSafeMode = intent.getBooleanExtra("safe-mode", false) + onLaunch(this, withSafeMode) } enableEdgeToEdge() diff --git a/app/src/main/java/com/geode/launcher/utils/GeodeUtils.kt b/app/src/main/java/com/geode/launcher/utils/GeodeUtils.kt index 44f0afa..f21c0ee 100644 --- a/app/src/main/java/com/geode/launcher/utils/GeodeUtils.kt +++ b/app/src/main/java/com/geode/launcher/utils/GeodeUtils.kt @@ -191,10 +191,16 @@ object GeodeUtils { @JvmStatic fun restartGame() { + restartGame(true) + } + + @JvmStatic + fun restartGame(safeMode: Boolean) { activity.get()?.run { packageManager.getLaunchIntentForPackage(packageName)?.also { val mainIntent = Intent.makeRestartActivityTask(it.component) mainIntent.putExtra("restarted", true) + mainIntent.putExtra("safe-mode", safeMode) startActivity(mainIntent) exitProcess(0) }