diff --git a/app/src/main/java/io/timelimit/android/integration/platform/android/Apps.kt b/app/src/main/java/io/timelimit/android/integration/platform/android/Apps.kt index da68ba4..2f0b614 100644 --- a/app/src/main/java/io/timelimit/android/integration/platform/android/Apps.kt +++ b/app/src/main/java/io/timelimit/android/integration/platform/android/Apps.kt @@ -1,5 +1,5 @@ /* - * TimeLimit Copyright 2019 Jonas Lochmann + * TimeLimit Copyright 2019 - 2022 Jonas Lochmann * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -58,6 +58,8 @@ object AndroidIntegrationApps { "com.android.phone" ) + val appsToIncludeInLockTasks = appsToNotSuspend + setOf("com.android.dialer") + private val ignoredActivities = setOf( "com.android.settings:com.android.settings.enterprise.ActionDisabledByAdminDialog", "com.android.settings:com.android.settings.FallbackHome", diff --git a/app/src/main/java/io/timelimit/android/logic/BackgroundTaskLogic.kt b/app/src/main/java/io/timelimit/android/logic/BackgroundTaskLogic.kt index 3bdb019..bee964a 100644 --- a/app/src/main/java/io/timelimit/android/logic/BackgroundTaskLogic.kt +++ b/app/src/main/java/io/timelimit/android/logic/BackgroundTaskLogic.kt @@ -989,8 +989,8 @@ class BackgroundTaskLogic(val appLogic: AppLogic) { shouldAnnoyNow.waitUntilValueMatches { it == true } appLogic.platformIntegration.showAnnoyScreen() - // bring into foreground all five seconds - withTimeoutOrNull(5000L) { shouldAnnoyNow.waitUntilValueMatches { it == false } } + // bring into foreground after some time + withTimeoutOrNull(300 * 1000L) { shouldAnnoyNow.waitUntilValueMatches { it == false } } } } } diff --git a/app/src/main/java/io/timelimit/android/ui/manipulation/AnnoyActivity.kt b/app/src/main/java/io/timelimit/android/ui/manipulation/AnnoyActivity.kt index 2f05697..5dca90c 100644 --- a/app/src/main/java/io/timelimit/android/ui/manipulation/AnnoyActivity.kt +++ b/app/src/main/java/io/timelimit/android/ui/manipulation/AnnoyActivity.kt @@ -25,6 +25,7 @@ import io.timelimit.android.R import io.timelimit.android.data.model.UserType import io.timelimit.android.databinding.AnnoyActivityBinding import io.timelimit.android.extensions.showSafe +import io.timelimit.android.integration.platform.android.AndroidIntegrationApps import io.timelimit.android.livedata.map import io.timelimit.android.logic.DefaultAppLogic import io.timelimit.android.ui.backdoor.BackdoorDialogFragment @@ -62,7 +63,9 @@ class AnnoyActivity : AppCompatActivity(), ActivityViewModelHolder { setContentView(binding.root) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - if (logic.platformIntegration.setLockTaskPackages(listOf(packageName))) { + val lockTaskPackages = AndroidIntegrationApps.appsToIncludeInLockTasks + setOf(packageName) + + if (logic.platformIntegration.setLockTaskPackages(lockTaskPackages.toList())) { startLockTask() } }