From dc81acb6876c29703a554f3615cf4ddadd781717 Mon Sep 17 00:00:00 2001 From: sameerasw Date: Fri, 5 Jun 2026 22:29:38 +0530 Subject: [PATCH 1/2] fix: uage access permission for Shut Up! --- .../services/handlers/AppFlowHandler.kt | 26 +++++++++++-------- .../essentials/utils/ServiceUtils.kt | 2 +- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/sameerasw/essentials/services/handlers/AppFlowHandler.kt b/app/src/main/java/com/sameerasw/essentials/services/handlers/AppFlowHandler.kt index f554d622f..aa73c2bb5 100644 --- a/app/src/main/java/com/sameerasw/essentials/services/handlers/AppFlowHandler.kt +++ b/app/src/main/java/com/sameerasw/essentials/services/handlers/AppFlowHandler.kt @@ -76,6 +76,7 @@ class AppFlowHandler( private var lastLockRequestTime: Long = 0 var currentPackage: String? = null private set + private var currentUsageStatsPackage: String? = null // App Automation State private val activeAppAutomationIds = mutableSetOf() @@ -96,25 +97,28 @@ class AppFlowHandler( val prefs = context.getSharedPreferences("essentials_prefs", Context.MODE_PRIVATE) val useUsageAccess = prefs.getBoolean("use_usage_access", false) - val oldPackage = currentPackage - currentPackage = packageName - - if (oldPackage != null && oldPackage != packageName) { - lastLeaveTimes[oldPackage] = System.currentTimeMillis() - } - - if (packageName != context.packageName && packageName != lockingPackage) { - lockingPackage = null + if (isFromUsageStats) { + val oldUsagePackage = currentUsageStatsPackage + currentUsageStatsPackage = packageName + if (oldUsagePackage != null && oldUsagePackage != packageName) { + checkShutUpRestore(oldUsagePackage, packageName) + } } + val oldPackage = currentPackage if (isFromUsageStats == useUsageAccess) { + currentPackage = packageName + if (oldPackage != null && oldPackage != packageName) { + lastLeaveTimes[oldPackage] = System.currentTimeMillis() + } + if (packageName != context.packageName && packageName != lockingPackage) { + lockingPackage = null + } checkAppLock(packageName) checkHighlightNightLight(packageName) checkAppAutomations(packageName) checkGestureBarAutomation(packageName) - checkShutUpRestore(oldPackage, packageName) } - } fun onAuthenticated(packageName: String) { diff --git a/app/src/main/java/com/sameerasw/essentials/utils/ServiceUtils.kt b/app/src/main/java/com/sameerasw/essentials/utils/ServiceUtils.kt index 088f7375a..dc7a83829 100644 --- a/app/src/main/java/com/sameerasw/essentials/utils/ServiceUtils.kt +++ b/app/src/main/java/com/sameerasw/essentials/utils/ServiceUtils.kt @@ -39,7 +39,7 @@ object ServiceUtils { val hasShutUpApps = shutUpConfigs.any { it.isEnabled } val shouldRun = - isUseUsageAccess && (isAppLockEnabled || isDynamicNightLightEnabled || isHideGestureBarOnLauncherEnabled || hasAppAutomations || hasShutUpApps) + (isUseUsageAccess && (isAppLockEnabled || isDynamicNightLightEnabled || isHideGestureBarOnLauncherEnabled || hasAppAutomations)) || hasShutUpApps val intent = Intent(context, AppDetectionService::class.java) if (shouldRun) { From d134c465904a53d5ed80726c7c7880b1f4e0eed4 Mon Sep 17 00:00:00 2001 From: sameerasw Date: Fri, 5 Jun 2026 22:47:51 +0530 Subject: [PATCH 2/2] feat: version upgrade --- app/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e33336ba2..27b6062b7 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -29,8 +29,8 @@ android { applicationId = "com.sameerasw.essentials" minSdk = 26 targetSdk = 37 - versionCode = 47 - versionName = "15.3" + versionCode = 48 + versionName = "15.4" val whatsNewCounter = 2 buildConfigField("int", "WHATS_NEW_COUNTER", whatsNewCounter.toString())