From 6faff7f780e9994d26a62c11bc0c3de85c34808d Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 7 Feb 2024 15:15:44 +0100 Subject: [PATCH] Fixed going back to default fragment when rotating the device --- app/src/main/java/org/linphone/ui/main/MainActivity.kt | 10 ++++++++++ .../org/linphone/ui/main/viewmodel/MainViewModel.kt | 2 ++ 2 files changed, 12 insertions(+) diff --git a/app/src/main/java/org/linphone/ui/main/MainActivity.kt b/app/src/main/java/org/linphone/ui/main/MainActivity.kt index 4d756bb52..740fb1640 100644 --- a/app/src/main/java/org/linphone/ui/main/MainActivity.kt +++ b/app/src/main/java/org/linphone/ui/main/MainActivity.kt @@ -386,6 +386,16 @@ class MainActivity : GenericActivity() { @MainThread private fun handleMainIntent(intent: Intent, isNewIntent: Boolean) { + // Prevent navigating to default fragment upon rotation (we only want to do it on first start) + if (intent.action == Intent.ACTION_MAIN && intent.type == null && intent.data == null && !isNewIntent) { + if (viewModel.mainIntentHandled) { + Log.d("$TAG Main intent without type nor data was already handled, do nothing") + return + } else { + viewModel.mainIntentHandled = true + } + } + if (intent.hasExtra("Chat")) { Log.i("$TAG Intent has [Chat] extra") try { diff --git a/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt b/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt index 46b56dff5..0b1002379 100644 --- a/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt @@ -86,6 +86,8 @@ class MainViewModel @UiThread constructor() : ViewModel() { var accountsFound = -1 + var mainIntentHandled = false + private var defaultAccountRegistrationFailed = false private val alertsList = arrayListOf>()