Эх сурвалжийг харах

Fix always-on app lock on cold start (#8018)

Ivan Iskandar 2 жил өмнө
parent
commit
ec30026333

+ 4 - 0
app/src/main/java/eu/kanade/tachiyomi/App.kt

@@ -172,6 +172,10 @@ class App : Application(), DefaultLifecycleObserver, ImageLoaderFactory {
         }.build()
     }
 
+    override fun onCreate(owner: LifecycleOwner) {
+        SecureActivityDelegate.onApplicationCreated()
+    }
+
     override fun onStop(owner: LifecycleOwner) {
         SecureActivityDelegate.onApplicationStopped()
     }

+ 9 - 0
app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt

@@ -23,6 +23,15 @@ interface SecureActivityDelegate {
     fun registerSecureActivity(activity: AppCompatActivity)
 
     companion object {
+        fun onApplicationCreated() {
+            val lockDelay = Injekt.get<PreferencesHelper>().lockAppAfter().get()
+            if (lockDelay == 0) {
+                // Restore always active app lock
+                // Delayed lock will be restored later on activity resume
+                lockState = LockState.ACTIVE
+            }
+        }
+
         fun onApplicationStopped() {
             val preferences = Injekt.get<PreferencesHelper>()
             if (!preferences.useAuthenticator().get()) return