diff --git a/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardActivity.kt b/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardActivity.kt index 7cb7168..561e540 100644 --- a/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardActivity.kt +++ b/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardActivity.kt @@ -316,15 +316,11 @@ class DownloadWizardActivity: BaseEuiccAccessActivity() { } open fun beforeNext() {} - } - override fun onStart() { - super.onStart() - window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) - } - - override fun onStop() { - super.onStop() - window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) + protected fun setKeepScreenOn(enabled: Boolean) { + val flags = WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON + val window = (requireActivity() as DownloadWizardActivity).window + if (enabled) window.addFlags(flags) else window.clearFlags(flags) + } } } \ No newline at end of file diff --git a/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardProgressFragment.kt b/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardProgressFragment.kt index 1b816d4..708f77b 100644 --- a/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardProgressFragment.kt +++ b/app-common/src/main/java/im/angry/openeuicc/ui/wizard/DownloadWizardProgressFragment.kt @@ -96,6 +96,7 @@ class DownloadWizardProgressFragment : DownloadWizardActivity.DownloadWizardStep override fun onStart() { super.onStart() + setKeepScreenOn(true) lifecycleScope.launch { showProgressBar(-1) // set indeterminate first @@ -140,6 +141,11 @@ class DownloadWizardProgressFragment : DownloadWizardActivity.DownloadWizardStep } } + override fun onStop() { + super.onStop() + setKeepScreenOn(false) + } + private suspend fun startDownloadOrSubscribe(): EuiccChannelManagerService.ForegroundTaskSubscriberFlow? = if (state.downloadStarted) { // This will also return null if task ID is -1 (uninitialized), too