diff --git a/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt b/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt index 8d1a677344b8255c5902190a6fb3fdaebbe6858e..ccad569e020828a4c6fbe441edc57deb5fecaa31 100644 --- a/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt +++ b/jami-android/app/src/main/java/cx/ring/client/HomeActivity.kt @@ -108,16 +108,20 @@ class HomeActivity : AppCompatActivity(), ContactPickerFragment.OnContactedPicke private val conversationBackPressedCallback: OnBackPressedCallback = object : OnBackPressedCallback(false) { override fun handleOnBackPressed() { - removeFragment(fConversation) - fConversation = null + if (supportFragmentManager.backStackEntryCount == 0) { + removeFragment(fConversation) + fConversation = null - // Hiding the conversation - if (mBinding?.panel?.isSlideable == true) { // No space to keep the pane open - mBinding?.panel?.closePane() - } else showWelcomeFragment() + // Hiding the conversation + if (mBinding?.panel?.isSlideable == true) { // No space to keep the pane open + mBinding?.panel?.closePane() + } else showWelcomeFragment() - // Next back press doesn't have to be handled by this callback. - isEnabled = false + // Next back press doesn't have to be handled by this callback. + isEnabled = false + } else { + supportFragmentManager.popBackStack() + } } }