Loading app/src/main/java/at/bitfire/davdroid/ReLoginWithOidcActivity.kt +22 −2 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ import at.bitfire.davdroid.log.Logger class ReLoginWithOidcActivity : AppCompatActivity() { private var needLogout = true override fun onStart() { super.onStart() Loading @@ -24,8 +26,12 @@ class ReLoginWithOidcActivity : AppCompatActivity() { finish() return } Logger.log.info("Vincent: onStart() call and gonna logout account") if (needLogout) { logoutAccount(accountName) } } private fun logoutAccount(accountName: String) { Loading @@ -37,6 +43,7 @@ class ReLoginWithOidcActivity : AppCompatActivity() { val success = future.result.getBoolean(KEY_BOOLEAN_RESULT) if (success) { needLogout = false loginAccount(eAccountType) } else { Logger.log.info("failed to remove account: $accountName ") Loading @@ -55,6 +62,12 @@ class ReLoginWithOidcActivity : AppCompatActivity() { private fun loginAccount(accountType: String) { val accountManager = AccountManager.get(this) val callback: (AliasFuture) -> Unit = { future -> val intent = getIntentFromFuture(future) intent?.let(::startActivity) finish() } try { accountManager.addAccount( accountType, Loading @@ -62,13 +75,20 @@ class ReLoginWithOidcActivity : AppCompatActivity() { null, null, null, null, { future -> callback(future)}, null ) } catch (exception: Exception) { Logger.log.warning("${exception.javaClass}: can't add account: ${exception.message}") } finish() } private fun getIntentFromFuture(future: AliasFuture): Intent? { return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { future.result?.getParcelable(KEY_INTENT, Intent::class.java) } else { future.result?.getParcelable(KEY_INTENT) } } } Loading Loading
app/src/main/java/at/bitfire/davdroid/ReLoginWithOidcActivity.kt +22 −2 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ import at.bitfire.davdroid.log.Logger class ReLoginWithOidcActivity : AppCompatActivity() { private var needLogout = true override fun onStart() { super.onStart() Loading @@ -24,8 +26,12 @@ class ReLoginWithOidcActivity : AppCompatActivity() { finish() return } Logger.log.info("Vincent: onStart() call and gonna logout account") if (needLogout) { logoutAccount(accountName) } } private fun logoutAccount(accountName: String) { Loading @@ -37,6 +43,7 @@ class ReLoginWithOidcActivity : AppCompatActivity() { val success = future.result.getBoolean(KEY_BOOLEAN_RESULT) if (success) { needLogout = false loginAccount(eAccountType) } else { Logger.log.info("failed to remove account: $accountName ") Loading @@ -55,6 +62,12 @@ class ReLoginWithOidcActivity : AppCompatActivity() { private fun loginAccount(accountType: String) { val accountManager = AccountManager.get(this) val callback: (AliasFuture) -> Unit = { future -> val intent = getIntentFromFuture(future) intent?.let(::startActivity) finish() } try { accountManager.addAccount( accountType, Loading @@ -62,13 +75,20 @@ class ReLoginWithOidcActivity : AppCompatActivity() { null, null, null, null, { future -> callback(future)}, null ) } catch (exception: Exception) { Logger.log.warning("${exception.javaClass}: can't add account: ${exception.message}") } finish() } private fun getIntentFromFuture(future: AliasFuture): Intent? { return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { future.result?.getParcelable(KEY_INTENT, Intent::class.java) } else { future.result?.getParcelable(KEY_INTENT) } } } Loading