From d52ea1b0684de1b12967dc841380d796c5a1d6ff Mon Sep 17 00:00:00 2001 From: LoveSy Date: Wed, 8 Mar 2023 13:04:04 +0800 Subject: [PATCH] Postpone `showMainUI` when activity has stopped Co-authored-by: topjohnwu --- .../com/topjohnwu/magisk/ui/SplashActivity.kt | 34 ++++++++++++++----- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt b/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt index 71f2bdef5..f103cb6ce 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt @@ -6,6 +6,7 @@ import android.os.Bundle import android.widget.Toast import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen import androidx.databinding.ViewDataBinding +import androidx.lifecycle.Lifecycle import androidx.lifecycle.lifecycleScope import com.topjohnwu.magisk.BuildConfig.APPLICATION_ID import com.topjohnwu.magisk.R @@ -29,13 +30,15 @@ import kotlinx.coroutines.launch abstract class SplashActivity : NavigationActivity() { companion object { - private var skipSplash = false + private var splashShown = false } + private var needShowMainUI = false + override fun onCreate(savedInstanceState: Bundle?) { setTheme(Theme.selected.themeRes) - if (isRunningAsStub && !skipSplash) { + if (isRunningAsStub && !splashShown) { // Manually apply splash theme for stub theme.applyStyle(R.style.StubSplashTheme, true) } @@ -44,11 +47,11 @@ abstract class SplashActivity : NavigationActivity : NavigationActivity : NavigationActivity : NavigationActivity : NavigationActivity/dev/null 2>&1").exec() } } - }