summaryrefslogtreecommitdiffhomepage
path: root/android/app/src
diff options
context:
space:
mode:
Diffstat (limited to 'android/app/src')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AccountFragment.kt30
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt10
2 files changed, 11 insertions, 29 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AccountFragment.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AccountFragment.kt
index 4b5fda7bbe..04e52ea518 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AccountFragment.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AccountFragment.kt
@@ -4,7 +4,6 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
-import androidx.fragment.app.FragmentManager
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.flowWithLifecycle
import androidx.lifecycle.lifecycleScope
@@ -90,7 +89,7 @@ class AccountFragment : ServiceDependentFragment(OnNoService.GoBack) {
}
view.findViewById<Button>(R.id.logout).setOnClickAction("logout", jobTracker) {
- logout()
+ accountCache.logout()
}
accountNumberView = view.findViewById<CopyableInformationView>(R.id.account_number).apply {
@@ -172,33 +171,6 @@ class AccountFragment : ServiceDependentFragment(OnNoService.GoBack) {
RedeemVoucherDialogFragment().show(transaction, null)
}
- private suspend fun logout() {
- accountCache.logout()
- clearBackStack()
- goToLoginScreen()
- }
-
- private fun clearBackStack() {
- parentFragmentManager.apply {
- val firstEntry = getBackStackEntryAt(0)
-
- popBackStack(firstEntry.id, FragmentManager.POP_BACK_STACK_INCLUSIVE)
- }
- }
-
- private fun goToLoginScreen() {
- parentFragmentManager.beginTransaction().apply {
- setCustomAnimations(
- R.anim.do_nothing,
- R.anim.fragment_exit_to_bottom,
- R.anim.do_nothing,
- R.anim.do_nothing
- )
- replace(R.id.main_fragment, LoginFragment())
- commit()
- }
- }
-
private fun addSpacesToAccountNumber(rawAccountNumber: String): String {
return rawAccountNumber
.asSequence()
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt
index 204635a161..c5efb3e984 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt
@@ -203,6 +203,7 @@ open class MainActivity : FragmentActivity() {
}
private fun openLoginView() {
+ clearBackStack()
supportFragmentManager.beginTransaction().apply {
replace(R.id.main_fragment, LoginFragment())
commit()
@@ -222,6 +223,15 @@ open class MainActivity : FragmentActivity() {
}
}
+ fun clearBackStack() {
+ supportFragmentManager.apply {
+ if (backStackEntryCount > 0) {
+ val firstEntry = getBackStackEntryAt(0)
+ popBackStack(firstEntry.id, FragmentManager.POP_BACK_STACK_INCLUSIVE)
+ }
+ }
+ }
+
companion object {
private const val ZERO_DEBOUNCE_DELAY_MILLISECONDS = 0L
private const val UNKNOWN_STATE_DEBOUNCE_DELAY_MILLISECONDS = 2000L