From 5f397d2b8f699dd1bf8c08c3951e864d3ac14304 Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Sun, 8 Sep 2019 02:06:14 -0700 Subject: Move biometric init out of coroutine launch --- app/src/main/kotlin/com/pitchedapps/frost/StartActivity.kt | 2 +- .../kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt | 2 +- app/src/main/kotlin/com/pitchedapps/frost/utils/BiometricUtils.kt | 5 +++++ app/src/main/play/en-US/whatsnew | 3 ++- app/src/main/res/xml/frost_changelog.xml | 2 +- 5 files changed, 10 insertions(+), 4 deletions(-) (limited to 'app') diff --git a/app/src/main/kotlin/com/pitchedapps/frost/StartActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/StartActivity.kt index e5b6d49a..d03a7ea4 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/StartActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/StartActivity.kt @@ -70,8 +70,8 @@ class StartActivity : KauBaseActivity() { showInvalidWebView() } + val authDefer = BiometricUtils.authenticate(this@StartActivity) launch { - val authDefer = BiometricUtils.authenticate(this@StartActivity) try { FbCookie.switchBackUser() val cookies = ArrayList(cookieDao.selectAll()) diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt index d82084d5..0322a4bb 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt @@ -209,8 +209,8 @@ abstract class WebOverlayActivityBase : BaseActivity(), with(web) { Prefs.prevId = Prefs.userId + val authDefer = BiometricUtils.authenticate(this@WebOverlayActivityBase) launch { - val authDefer = BiometricUtils.authenticate(this@WebOverlayActivityBase) if (userId != Prefs.userId) FbCookie.switchUser(userId) authDefer.await() diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/BiometricUtils.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/BiometricUtils.kt index 4ececc8b..136fe28f 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/utils/BiometricUtils.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/BiometricUtils.kt @@ -65,6 +65,11 @@ object BiometricUtils { return Prefs.biometricsEnabled && System.currentTimeMillis() - lastUnlockTime > UNLOCK_TIME_INTERVAL } + /** + * Generates a prompt dialog and attempt to return an auth object. + * Note that the underlying request will call [androidx.fragment.app.FragmentTransaction.commit], + * so this cannot happen after onSaveInstanceState. + */ fun authenticate(activity: FragmentActivity, force: Boolean = false): BiometricDeferred { val deferred: BiometricDeferred = CompletableDeferred() if (!force && !shouldPrompt(activity)) { diff --git a/app/src/main/play/en-US/whatsnew b/app/src/main/play/en-US/whatsnew index 4db2b010..21e65341 100644 --- a/app/src/main/play/en-US/whatsnew +++ b/app/src/main/play/en-US/whatsnew @@ -1,3 +1,4 @@ v2.4.0 -* Removed web only mode for auth requests. Marking notifications as read is now disabled by default to deal with phishing accusations. \ No newline at end of file +* Removed web only mode for auth requests. Marking notifications as read is now disabled by default to deal with phishing accusations. +* Save images with the correct extensions. \ No newline at end of file diff --git a/app/src/main/res/xml/frost_changelog.xml b/app/src/main/res/xml/frost_changelog.xml index 42739ab1..2fb9984a 100644 --- a/app/src/main/res/xml/frost_changelog.xml +++ b/app/src/main/res/xml/frost_changelog.xml @@ -8,7 +8,7 @@ - + -- cgit v1.2.3